我在64位CentOS服务器上安装了Apache 7.0.27,可用的物理内存为37G。对于运行在Tomcat中的web应用程序,我需要大量可用的内存,所以我已经设置了类似于下面的Tomcat setenv.sh:
export JAVA_OPTS="
-Xms30g
-Xmx30g
-XX:PermSize=256m
-XX:MaxPermSize=256m
-XX:NewSize=6g
-XX:MaxNewSize=6g
-XX:SurvivorRatio=8
-XX:+DisableExplicitGC
-XX:+UseConcMarkSweepGC
-XX:+UseParNewGC
-XX:+UseCMSInitiatingOccupancyOnly
-XX:CMSInitiatingOccupancyFraction=80"
我的Java版本是:
java version "1.6.0_41"
Java(TM) SE Runtime Environment (build 1.6.0_41-b02)
Java HotSpot(TM) 64-Bit Server VM (build 20.14-b01, mixed mode)
当运行{tomcat_home}/bin/startup.sh时,应用程序启动并运行良好,但当我使用{tomcat_home}/bin/快门关闭时,偶尔会收到以下消息:
Error occurred during initialization of VM
Could not reserve enough space for object heap
为什么会发生这种情况?
发布于 2016-03-16 12:42:53
关闭脚本试图通过运行一个连接到Tomcat关闭端口(8009?)的小型Java程序来进行有序关闭。并发出一个信息。
该程序在自己的JVM中运行,如果您的系统内存不足,它可能无法启动该JVM来将关机命令发送给正在运行的Tomcat。
https://stackoverflow.com/questions/36046306
复制相似问题