|
常見的一般會有下面三種情況: 1.OutOfMemoryError: Java heap space 2.OutOfMemoryError: PermGen space 3.OutOfMemoryError: unable to create new native thread. 前兩種通常一起進(jìn)行操作,也就是通過下面的 linux下在catalina.sh文件最前面加入如下語句,這個文件在tomcat -->bin目錄下。 JAVA_OPTS='-Xms1024m -Xmx1024m -XX:PermSize=256M -XX:MaxNewSize=512m -XX:MaxPermSize=512m'
=============================================================================================
1. 內(nèi)存溢出: Java.lang.OutOfMemoryError:PermGen space
后臺日志:
2. 查看內(nèi)存 free –m,詳見http://www.cnblogs.com/rosesmall/archive/2012/05/08/2490522.html 3. 空閑內(nèi)存=free+buffers+cached=total-used
4. 查看后臺zebra項目的tomcat內(nèi)存:
cat /opt/zebra/tomcat/bin/catalina.sh,查看以下內(nèi)容:
export JAVA_OPTS="-Dwebapp=zebra.tomcat-Dfile.encoding=GB18030 -Xmx4096m -Xms1024m -Djava.awt.headless=true"
當(dāng)-Xmx1024m中的值大于free –m 查看到的系統(tǒng)實際空閑內(nèi)存時,出現(xiàn)內(nèi)存溢出錯誤。需要修改-Xmx1024m中的值,使其小于實際空閑內(nèi)存。
查看系統(tǒng)最大支持內(nèi)存命令:java -Xmx1024m –version
查看系統(tǒng)初始化內(nèi)存大學(xué):java –Xms 512m –version JAVA_OPTS='-Xms【初始化內(nèi)存大小】 -Xmx【可以使用的最大內(nèi)存】' 需要把這個兩個參數(shù)值調(diào)大。例如: JAVA_OPTS='-Xms256m -Xmx512m' 表示初始化內(nèi)存為256MB,可以使用的最大內(nèi)存為512MB。 windows版本下類似,在文件/bin/catalina.bat里追加即可。 |
|
|