資源描述:
《tomcat內(nèi)置jvm的內(nèi)存限制修改》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、大家都知道,JAVA程序啟動(dòng)時(shí)都會(huì)JVM都會(huì)分配一個(gè)初始內(nèi)存和最大內(nèi)存給這個(gè)應(yīng)用程序。這個(gè)初始內(nèi)存和最大內(nèi)存在一定程度都會(huì)影響程序的性能。比如說在應(yīng)用程序用到最大內(nèi)存的時(shí)候,JVM是要先去做垃圾回收的動(dòng)作,釋放被占用的一些內(nèi)存。?????想調(diào)整Tomcat的啟動(dòng)時(shí)初始內(nèi)存和最大內(nèi)存就需要向JVM聲明,一般的JAVA程序在運(yùn)行都可以通過中-Xms(初始值)-Xmx(最大值)-Xmn(最小值)來調(diào)整應(yīng)用程序的初始內(nèi)存和最大內(nèi)存,一般情況下,將Xms和Xmx兩個(gè)值設(shè)置大小為一樣的,這樣可以避免再程序運(yùn)行完畢內(nèi)存GC時(shí)還需要重新調(diào)整內(nèi)存,提高效率。
2、如:java-Xms64m-Xmx128ma.jar.tomcat的啟動(dòng)程序是包裝過的,不能直接使用java-X.....tomcat.*來改變內(nèi)存的設(shè)置。在Tomcat在改變這個(gè)設(shè)置有兩種方法:1.就需要在環(huán)境變量中加上TOMCAT_OPTS,CATALINA_OPTS兩個(gè)屬性,如SETCATALINA_OPTS=-Xms64m-Xmx512m;ms是最小的,mx是最大,64m,512m分別是指內(nèi)存的容量.2.修改Catalina.bat文件linux操作系統(tǒng):在/usr/local/apache-tomcat-5.5.23/bin目錄下
3、的catalina.sh添加:JAVA_OPTS='-Xms1024m-Xmx1024m'要加“m”說明是MB,否則就是KB了,在啟動(dòng)tomcat時(shí)會(huì)報(bào)內(nèi)存不足。windowsNT操作系統(tǒng):在catalina.bat最前面加入setJAVA_OPTS=-Xms128m-Xmx350m如果用startup.bat啟動(dòng)tomcat,OK設(shè)置生效.夠成功的分配200M內(nèi)存.但是如果不是執(zhí)行startup.bat啟動(dòng)tomcat而是利用windows的系統(tǒng)服務(wù)啟動(dòng)tomcat服務(wù),上面的設(shè)置就不生效了,就是說setJAVA_OPTS=-Xms128
4、m-Xmx350m沒起作用.上面分配200M內(nèi)存就OOM了..windows服務(wù)執(zhí)行的是bin/tomcat.exe.他讀取注冊(cè)表中的值,而不是catalina.bat的設(shè)置.解決辦法:修改注冊(cè)表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服務(wù),設(shè)置生效