今天一個網友問了我一個問題:
問題是:5千條正常傳送,1w條就報內存溢出 .
建議解決方法:
1.設OutOfMemory的異常斷點,看出錯時jvm裏的堆棧情況.
2.增大內存.(可是他說內存是2G的,服務器內存8G,依舊報錯)
3.分頁給數據.(可是他說不行,必須一次性給1W條以上的數據)
真心的建議還是從優化程序的設計入手.解決根本問題.最終他還是採納了我的建議.
可能性:
a.有和全局的List在整個抽取中不被釋放;
b.日誌文件不是批次寫入,而時所有都結束後一次寫入,無論總文件有多大.
問題就好比我們一頓飯多次點沒有關係,天天這麼吃就會張胖一樣.
所以程序中特別是全局或是static的東西要很是留意.