当前位置: 代码迷 >> Java Web开发 >> tomcat 内存溢出,该怎么解决
  详细解决方案

tomcat 内存溢出,该怎么解决

热度:11335   发布时间:2013-02-25 21:17:11.0
tomcat 内存溢出
项目正在开发,在我的机器上,和同事的机器上是没有问题的。(使用myeclipse启动的)
但是放在公司的一台服务器上后,没有多长时间就内存溢出
java.lang.OutOfMemoryError: PermGen space  
在网上搜了好多,
解决方法: 手动设置MaxPermSize大小修改TOMCAT_HOME/bin/catalina.sh 在“echo "Using CATALINA_BASE: $CATALINA_BASE"”上面加入以下行: JAVA_OPTS="-server -XX:PermSize=64M -XX:MaxPermSize=128m 

但是没有效果啊。一会儿照样溢出!!求高手!
跪求高手指点迷经啊!!

------解决方案--------------------------------------------------------
PermGen space 这个是 永久对象区, 也就是说那些永不会销毁的对象。
发生这个情况的原因可能是 有些xml修改,导致tomcat reload 对象造成的。
------解决方案--------------------------------------------------------
把128再加大一些
避免在项目运行时实时更新项目
------解决方案--------------------------------------------------------
设的太小了
JAVA_OPTS="-server -XX:PermSize=64M -XX:MaxPermSize=128m
我自己机器上都设的是512 1024,在服务器上一般都更大了
------解决方案--------------------------------------------------------
在eclipse.ini修改为:
-vmargs
-Xmn256m
-Xverify:none
-Xms512m
-Xmx1024m
-XX:MaxPermSize=256m
-XX:ParallelGCThreads=2
-XX:+UseConcMarkSweepGC
-XX:CMSFullGCsBeforeCompaction=20
-Dcom.sun.management.jmxremote


或者在preferences-->Installed JREs设定:-Xms256m -Xmx512m -XX:PermSize=256m -XX:MaxPermSize=256m
------解决方案--------------------------------------------------------
http://blog.csdn.net/aiwo429001/article/details/6147521
------解决方案--------------------------------------------------------
探讨

把128再加大一些
避免在项目运行时实时更新项目
  相关解决方案