我注意到在大型應用程序中發生了這種情況,前端服務器吞吐PermGen的速度相當快,最糟糕的部分是每次請求都不斷增加,有時候它會繼續增加,即使我們沒有完全可以嚮應用服務器發出任何請求。我面對這與tomcat 6.0.33,tomcat6.0.29都。Struts2 PermGen內存不足錯誤
要隔離這個問題,我拿起struts空白,讓我沮喪的是它顯示了同樣的趨勢。這是正常的嗎? 我試着用maven(mvn archetype:generate)檢查出幾個版本的struts2,比如2.2.1,2.2.1.1,2.2.3.1,並且在jetty中運行它們之後,我注意到PermGen空間在每個請求中都被填充了2-3KB。我正在測試struts blank和jetty-6.1.21。
由於PermGen作爲請求數量的函數而增加,我懷疑有多少值得去使用它的產品?
1.在網絡應用程序中多次調用這會導致PermGen空間上升嗎? 'inst = Class.forName(「com.xxx.yyy.MyClass」)。newInstance(); ... inst = null;'2.這個類是否被卸載並在稍後收集垃圾? – 2012-01-13 07:35:19
沒有任何關於你的分析器細節的細節,它真的很難爲任何人說什麼。 – 2012-01-16 05:00:18
@Umesh我想知道的是,是否存在與struts-2相關的任何已知問題。而且,如果你可以回答,如果上述senario inst = Class.forName(「com.xxx.yyy.MyClass」)。newInstance(); ... inst = null;可能會導致PermGen空間內存泄漏。關於性能問題的 – 2012-01-19 04:58:21