Tomcat 服務器是一個免費的開放源代碼的Web 應用服務器,是開發和調試JSP 程序的首選。對於一個初學者來說,可以這樣認為,當在一台機器上配置好Apache 服務器,可利用它響應HTML(標准通用標記語言下的一個應用)頁面的訪問請求。實際上Tomcat 部分是Apache 服務器的擴展,但它是獨立運行的,所以當你運行tomcat 時,它實際上作為一個與Apache 獨立的進程單獨運行的。因為Tomcat 技術先進、性能穩定,而且免費,因而深受Java 愛好者的喜愛並得到了部分軟件開發商的認可,成為目前比較流行的Web 應用服務器。但是它也有異常出現,今天小編就要告訴大家Linux處理Tomcat異常的方法。
一、 PermGen space的全稱是Permanent Generation space,是指內存的永久保存區域OutOfMemoryError: PermGen space從表面上看就是內存益出,解決方法也一定是加大內存。
為什麼會內存益出
這一部分用於存放Class和Meta的信息,Class在被 Load的時候被放入PermGen space區域,它和和存放Instance的Heap區域不同,GC(Garbage Collection)不會在主程序運行期對PermGen space進行清理,所以如果你的APP會LOAD很多CLASS的話,就很可能出現PermGen space錯誤。這種錯誤常見在web服務器對JSP進行pre compile的時候。
改正方法:-Xms256m -Xmx256m -XX:MaxNewSize=256m -XX:MaxPermSize=256m
二、在tomcat中redeploy時出現outofmemory的錯誤。
出錯原因
1、使用了proxool,因為proxool內部包含了一個老版本的cglib.
2、log4j,最好不用,只用common-logging
3、老版本的cglib,快點更新到最新版。
4、更新到最新的hibernate3.2
當我們找到Linux中Tomcat異常的原因,方法也就不難找了,如果你在使用Linux系統時遇到tomcat異常,這個方法一定能給你帶來幫助。