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