Tomcat Full GC问题

时间:2016-06-29 04:47:48

标签: tomcat

我的应用程序在服务器日志中不断停止工作和下线: [Full GC 1989887K-> 1989887K(1989888K),3.8619050 secs]

我的服务器配置如下:

server
-verbose:gc
-Xms2g
-Xmx2g
-XX:NewSize=1048m
-XX:MaxNewSize=1048m
-XX:PermSize=256m
-XX:MaxPermSize=256m
-XX:SurvivorRatio=8
-XX:TargetSurvivorRatio=8
-XX:+UseParNewGC
-XX:ParallelGCThreads=4
-XX:+CMSParallelRemarkEnabled
-XX:+AggressiveOpts
-XX:GCTimeRatio=20
-XX:-HeapDumpOnOutOfMemoryError"
 OS specific support.  $var _must_ be set to either true or false.
cygwin=false
darwin=false
os400=false
case "`uname`" in
CYGWIN*) cygwin=true;;
Darwin*) darwin=true;;
OS400*) os400=true;;
esac

我使用Java 1.7,Tomcat 8和postgres作为数据库

请帮助,因为我需要在每2小时后重新启动服务器以重新启动应用程序

2 个答案:

答案 0 :(得分:0)

将PermSize和MaxPermSize更改为512米,然后重试:)。您将在bin目录中的setenv.bat文件中找到这些值。必须根据您的需求和内存限制进行调整。在这里查看这篇文章 https://dzone.com/articles/java-performance-tuning

答案 1 :(得分:0)

使用增量gc减少暂停

-XX:+UseConcMarkSweepGC -XX:+CMSIncrementalMode