欢迎来到天天文库
浏览记录
ID:2019692
大小:27.50 KB
页数:2页
时间:2017-11-14
《tomcat内置jvm的内存限制修改》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、大家都知道,JAVA程序启动时都会JVM都会分配一个初始内存和最大内存给这个应用程序。这个初始内存和最大内存在一定程度都会影响程序的性能。比如说在应用程序用到最大内存的时候,JVM是要先去做垃圾回收的动作,释放被占用的一些内存。 想调整Tomcat的启动时初始内存和最大内存就需要向JVM声明,一般的JAVA程序在运行都可以通过中-Xms(初始值)-Xmx(最大值)-Xmn(最小值)来调整应用程序的初始内存和最大内存,一般情况下,将Xms和Xmx两个值设置大小为一样的,这样可以避免再程序运行完毕内存GC时还需要重新调整内存,提高效率。
2、如:java-Xms64m-Xmx128ma.jar.tomcat的启动程序是包装过的,不能直接使用java-X.....tomcat.*来改变内存的设置。在Tomcat在改变这个设置有两种方法:1.就需要在环境变量中加上TOMCAT_OPTS,CATALINA_OPTS两个属性,如SETCATALINA_OPTS=-Xms64m-Xmx512m;ms是最小的,mx是最大,64m,512m分别是指内存的容量.2.修改Catalina.bat文件linux操作系统:在/usr/local/apache-tomcat-5.5.23/bin目录下
3、的catalina.sh添加:JAVA_OPTS='-Xms1024m-Xmx1024m'要加“m”说明是MB,否则就是KB了,在启动tomcat时会报内存不足。windowsNT操作系统:在catalina.bat最前面加入setJAVA_OPTS=-Xms128m-Xmx350m如果用startup.bat启动tomcat,OK设置生效.够成功的分配200M内存.但是如果不是执行startup.bat启动tomcat而是利用windows的系统服务启动tomcat服务,上面的设置就不生效了,就是说setJAVA_OPTS=-Xms128
4、m-Xmx350m没起作用.上面分配200M内存就OOM了..windows服务执行的是bin/tomcat.exe.他读取注册表中的值,而不是catalina.bat的设置.解决办法:修改注册表HKEY_LOCAL_MACHINE/SOFTWARE/ApacheSoftwareFoundation/TomcatServiceManager/Tomcat5/Parameters/JavaOptions原值为-Dcatalina.home="C:/ApacheGroup/Tomcat5.0"-Djava.endorsed.dirs="C:/A
5、pacheGroup/Tomcat5.0/common/endorsed"-Xrs加入-Xms300m-Xmx350m 重起tomcat服务,设置生效
此文档下载收益归作者所有