在我們的應用程序中,我們允許用戶通過Excel工作表上傳/下載數據,並使用Apache POI讀取和寫入這些Excel表單。
我們計劃將我們所有的xls表單遷移到xlsx,但在過程中知道通過Apache POI的XSSF(對於xlsx)的內存佔用量非常高。Java應用程序的內存佔用量
因此,我們想對此進行壓力測試,並驗證轉移到xlsx不會給我們頻繁的OutOfMemory異常。 任何指針,我們如何能夠有效地記錄內存佔用,而我們強調用更大的Excel(xlsx)文件測試此功能。
謝謝!
在我們的應用程序中,我們允許用戶通過Excel工作表上傳/下載數據,並使用Apache POI讀取和寫入這些Excel表單。
我們計劃將我們所有的xls表單遷移到xlsx,但在過程中知道通過Apache POI的XSSF(對於xlsx)的內存佔用量非常高。Java應用程序的內存佔用量
因此,我們想對此進行壓力測試,並驗證轉移到xlsx不會給我們頻繁的OutOfMemory異常。 任何指針,我們如何能夠有效地記錄內存佔用,而我們強調用更大的Excel(xlsx)文件測試此功能。
謝謝!
正如@Johan提到的,你可以使用一個分析器或利用的方法maxMemory,
totalMemory,
和freeMemory
從Runtime
的某種組合。如果這些結果表明內存佔用量確實存在問題,那麼Apache POI確實爲XSSF提供了佔用空間更小的another option。這很難使用,所以我不建議使用它,除非你的分析結果表明你必須這樣做,但它可能有幫助。
可能重複[此線程](http://stackoverflow.com/questions/756873/best-way-to-profile-memory-usage-in-a-java-application)。很多推薦的輪廓儀都在該線程中提及。 – 2011-06-07 15:30:12