tomcat出现异常:
java.lang.OutOfMemoryError: GC overhead limit exceeded
一般是因为堆太小。导致异常的原因:没有足够的内存
Linux下,在catalina.sh最前面增加:的java启动参数加上XX:-UseGCOverheadLimit和调大内存
JAVA_OPTS=”-Djava.awt.headless=true -Dfile.encoding=UTF-8 -server -Xms4096m -Xmx4096m -XX:NewSize=1024m -XX:MaxNewSize=1024m -XX:PermSize=1024m -XX:MaxPermSize=1024m -XX:-UseGCOverheadLimit”
配置完成后可重启Tomcat ,通过以下命令进行查看配置是否生效:
先查看tomcat 的进程
ps -ef |grep tomcat
sun 5144 1 0 10:21 pts/1 00:00:06 /java/jdk/bin/java -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.endorsed.dirs=/java/tomcat/common/endorsed -classpath :/java/tomcat/bin/bootstrap.jar:/java/tomcat/bin/commons-logging-api.jar -Dcatalina.base=/java/tomcat -Dcatalina.home=/java/tomcat -Djava.io.tmpdir=/java/tomcat/temp org.apache.catalina.startup.Bootstrap start
然后
jmap -heap 5144
pmap 5144
jmap -histo 5144