[英]Allocation Failure of GC while restarting Tomcat 'apache-tomcat-8.0.33' with 'jdk 1.8'
我有一个使用JDK1.6
和Tomcat 6
的webapp。 在将webapp设置为使用apache-tomcat-8.0.33
和jdk1.8
,我停止了Tomcat并重新启动它。 我在日志文件中看到一个错误:
适用于linux-amd64 JRE(1.8.0_05-b13)的Java HotSpot(TM)64位服务器VM(25.5-b02),由“ java_re”和gcc 4.3.0 20080428(红色)于2014年3月18日00:29:27构建(红色帽子4.3.0-8)
内存:4k页,物理32960008k(免费1705688k),交换4095992k(免费9328k)命令行标志:-XX:+ CMSClassUnloadingEnabled -XX:InitialHeapSize = 1073741824 -XX:MaxHeapSize = 2097152000 -XX:+ PrintGC -XX:+ PrintGCTimeStamps -XX:+ UseCompressedClassPointers -XX:+ UseCompressedOops -XX:+ UseParallelGC
0.299:[GC(分配失败)512K-> 384K(1048064K),0.0023630秒]
0.462:[GC(分配失败)896K-> 664K(1048064K),0.0024930秒]
可能是什么问题?
tomcat出现这些错误通常有两个原因。 1.您没有分配足够的内存。 2.您分配的内存过多。
我下注#2。
我可能会读错:
Memory: 4k page, physical 32960008k(1705688k free)
但这似乎表明您有1.7GB的可用内存。 您的堆最初占用1GB,最大为2GB。 那不会留下很多可用的内存。
除非您确实需要1GB的堆空间,否则应大幅度减少堆空间以及最大堆大小。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.