tomcat内存溢出
Posted qiankun-site
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了tomcat内存溢出相关的知识,希望对你有一定的参考价值。
产生的原因和表现:
tomcat默认有一个可用内存,一般为128M,如果项目较大的情况下就会出现内存溢出的情况,具体表现为项目访问出现无原因卡顿或者直接无法进行访问,后台会出现错误:Java.lang.OutOfMemoryError:unable to create new native thread at java.lang.Thread.start(native method) at org.apache.catalina.loader.Webapploader.notifyContext……
如何处理:
不同的情况处理方式不同,分为,windows下安装版本、windows下免安装版本、linux系统下、eclipse中
1、windows下安装版(未亲测,仅供参考):
直接双击tomcat.exe
2、windows下免安装版本
找到tomcat所在目录下的bin目录下的catalina.bat文件,在此文件中增加JAVA_OPTS=-Xms512m -Xmx512m -Xss1024k -XX:PermSize=16m -XX:MaxPermSize=128m
3、linux下内存溢出
参照windows下免安装tomcat设置方式,只不过修改的文件是catalina.sh文件
4、eclipse中设置tomcat内存参数
双击server下的tomcat,点击general information下的open launch configuration,打开arguments选项卡,加入如下内容,
-Xms512M -Xmx1024M -XX:PermSize=256m -XX:MaxPermSize=512m
也可以右键run、runConfigurations、arguments下打开加入如上参数
参数的含义:
xms512M:Java虚拟机占用系统的最小内存为512M
Xmx1024M:Java虚拟机占用系统的最大内存为512M
XX:PermSize:最小的栈内存大小(一般报的内存溢出都是因为此参数过小,可以适当的加大)
XX:MaxPermSize:最大栈内存大小
以上是关于tomcat内存溢出的主要内容,如果未能解决你的问题,请参考以下文章