1. 程式人生 > >Linux tomcat解決記憶體溢位

Linux tomcat解決記憶體溢位

tomcat 日誌報錯:

iZ284dfbxn8Z:/usr/local/apache-tomcat-7.0.67/logs # tail -f catalina.out

Exception in thread "http-bio-8080-exec-46" java.lang.OutOfMemoryError: PermGen space
Exception in thread "http-bio-8080-exec-47" java.lang.OutOfMemoryError: PermGen space
Exception in thread "http-bio-8080-exec-48" java.lang.OutOfMemoryError: PermGen space
Exception in thread "http-bio-8080-exec-49" java.lang.OutOfMemoryError: PermGen space
Exception in thread "http-bio-8080-exec-50" java.lang.OutOfMemoryError: PermGen space
Exception in thread "http-bio-8080-exec-41" java.lang.OutOfMemoryError: PermGen space
Exception in thread "http-bio-8080-exec-51" java.lang.OutOfMemoryError: PermGen space
Exception in thread "http-bio-8080-exec-52" java.lang.OutOfMemoryError: PermGen space
Exception in thread "http-bio-8080-exec-53" java.lang.OutOfMemoryError: PermGen space

Exception in thread "http-bio-8080-exec-55" java.lang.OutOfMemoryError: PermGen space

Tomcat的JVM記憶體溢位解決方法
在生產環境中,tomcat記憶體設定不好很容易出現JVM記憶體溢,解決方法就是修改Tomcat中的catalina.sh檔案。

在catalina.sh檔案中,找到cygwin=false,在這一行的前面加入引數,具體如下

# vi TOMCAT_HOME/bin/catalina.sh
JAVA_OPTS="-server -Xms800m -Xmx800m -XX:PermSize=256m -XX:MaxPermSize=512m -XX:MaxNewSize=512m"