程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程綜合問答 >> too many open files-Log4J中Logger如何關閉IO流

too many open files-Log4J中Logger如何關閉IO流

編輯:編程綜合問答
Log4J中Logger如何關閉IO流

在項目由於日志需要對日志進行擴展,根據交易號和日期生成logger對象放入隊列中,每天會清除之前的日志對象,剛開始沒有發現問題,大約到了1個月左右,生產中報了java.net.SocketException:too many open files異常,首先整個系統中除了日志外,只有讀取配置文件的兩個本地IO操作,其他的是網絡IO,其次在早上沒有大規模並發請求,除了心跳報文外,其他無請求,綜合上述可以將問題定位在日志上。仔細想每天我只是把日志對象從Hashtable中remove了,但是被remove的Logger對象並未立刻被GC,我想在remove後,將Logger中IO資源立即釋放,求高手指點。

最佳回答:


確定是日志文件的問題? 我Java不太熟, 但至少讀寫文件不會出SocketException應該是肯定的吧?

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved