解决Tomcat自己停止的问题

时间:2023-01-02 21:39:53

前些天,突然发现自己的网站访问不了了,打开服务器一看,原来tomcat已经停止了,后来,每隔一天我都去重新启动一下Tomcat,这也太麻烦了。于是,我上网查了一下,网友说是Tomcat内存溢出自己挂掉了。于是我更改了tomcat的jvm内存大小配置,在这里做个记录,也方便遇到同样问题的网友借鉴。方法如下:

 a.如果tomcat是以bat方式启动的,则如下设置:

修改TOMCAT_HOME/bin/catalina.bat

在“echo "Using CATALINA_BASE: $CATALINA_BASE"”上面加入以下行:

JAVA_OPTS="-server -Xms800m -Xmx800m -XX:MaxNewSize=256m"

b.如果tomcat是注册成了windows服务,以services方式启动的,则需要修改注册表中的相应键值。

打开注册表,找到目录HKEY_LOCAL_MACHINE\SOFTWARE\Apache Software Foundation\Procrun 2.0\htfty\Parameters\Java,其中目录地址中红色标注的(如htfty)需要根据不同情况作修改,为tomcat服务注册成windows服务的名称。 可以看到JvmMs和JvmMx项,其中JvmMs设置最小的内存使用参数,JvmMx设置最大的内存使用参数。设置好JvmMs和JvmMx项的值,重启tomcat服务器即可生效。

提示:Heap Size 最大不要超过可用物理内存的80%,一般的要将-Xms和-Xmx选项设置为相同,而-Xmn为1/4的-Xmx值。