在java web应用开发的过程中,tomcat这个服务器是经常用到的,而它的性能情况直接影响了web应用的效率,提高tomcat的JVM的内存,能提高它的效率,下面介绍下如何设置tomcat的JVM虚拟机内存大小:
1、Tomcat作为应用服务器,不能直接运行,需要相应的硬件和 *** 作系统的支持,,需要java虚拟机环境。也就是说tomcat启动的时候 ,JVM会分配一个初始内存以及最大内存给 tomcat,所以要提高tomcat的jvm内存,需要在启动的时候,进行配置。
2、找到tomcat在本地电脑中的安装目录,进入这个目录,然后进入bin目录中,在window环境下找到bin目录中的catalina.bat,在linux环境下找到catalina.sh。
3、右键编辑catalina.bat这个文件,找到JAVA_OPTS这个选项的位置,这个参数是java启动的时候,需要的启动参数。
4、将这个参数设置为JAVA_OPTS='-Xms512m -Xmx1024m'表示初始化分配内存为512MB,可以使用的最大内存为1024MB。
5、也可以在 *** 作系统的环境变量中对JAVA_OPTS进行设置,因为tomcat在启动的时候,也会读取 *** 作系统中的环境变量的值,进行加载。
6、如果是修改了 *** 作系统的环境变量,需要重启机器,再重启tomcat,如果修改的是tomcat配置文件,需要将配置文件保存,然后重启tomcat,设置就能生效了。
为了解决tomcat在进行大并发请求时,出现内存溢出的问题,请修改tomcat的内存大小,其中分为以下两种方式:一、使用catalina.bat等命令行方式运行的tomcat查看系统是否能支持所填最大内存命令:java-Xmx1024m-version,当所填值不合法时,执行该命令将报错1、修改tomcat\bin\Catalina.bat文件windows环境下:在166行左右remExecuteJavawiththeapplicableproperties”以下每行%_EXECJAVA%%JAVA_OPTS%%CATALINA_OPTS%%DEBUG_OPTS%-Djava.endorsed.dirs="%JAVA_ENDORSED_DIRS%"-classpath"%CLASSPATH%"-Dcatalina.base="%CATALINA_BASE%"-Dcatalina.home="%CATALINA_HOME%"-Djava.io.tmpdir="%CATALINA_TMPDIR%"%MAINCLASS%%CMD_LINE_ARGS%%ACTION%在%DEBUG_OPTS%后面添加-Xms256m-Xmx512mlinux环境下:打开在Tomcat的安装目录的bin文件的catalina.sh文件,进入编辑状态.在注释后面加上如下脚本:JAVA_OPTS='-Xms512m-Xmx1024m'JAVA_OPTS="$JAVA_OPTS-server-XX:PermSize=64M-XX:MaxPermSize=256m"其中JAVA_OPTS='-Xms512m-Xmx1024m'是设置Tomcat使用的内存的大小.-XX:PermSize=64M-XX:MaxPermSize=256m指定类空间(用于加载类)的内存大小保存后,重新以命令行的方式运行tomcat,即可,然后通过最后面介绍的如何观察tomcat现有内存情况的方法进行查看是否已经变更成功。二、使用系统中的“服务”,或者开始菜单的可执行程序运行的tomcat1、关闭现在正在运行的tomcat2.1[注意][高版本tomcat配置方法]如果是tomcat5.5或者是5.0.28之后的版本,在Java选项卡中,下方,会有InitalmemoryPool:MaximummemoryPool:Threadstacksize:三个输入框,在这里即可不用做上面的 *** 作,直接配置内存大小,只需要设置InitalmemoryPool为256MaximummemoryPool为512点击确定后,重启tomcat生效如果您是低版本的tomcat,发现没有上面那几个录入框,请看下面的 *** 作步骤[低版本tomcat配置方法]在开始菜单中,找到“ApacheTomcat5.0”,并选择“ConfigureTomcat”,在d出的对话框窗口中,切换到JavaVM选项卡,并在JavaOptions输入框的最前面输入-Xms256m-Xmx512m即输入框中的内容会像下面的代码(与自己的环境有所区别)-Xms256m-Xmx512m-Dcatalina.home="C:\tomcat5"-Djava.endorsed.dirs="C:\tomcat5\common\endorsed"-Xrs设置完后,点击“确定”,并重启tomcat即可。三、查看现有tomcat的内存大小情况1、启动tomcat2、访问栈内存,按需分配(3)-Xss,设定每个线程的堆栈大小(4)-XX:PermSize,JVM初始分配的非堆内存(5)-XX:MaxPermSize,JVM最大允许分配的非堆内存,按需分配举例:-Xms256m-Xms512m-XX:PermSize=64m-XX:MaxPermSize=128m欢迎分享,转载请注明来源:内存溢出
评论列表(0条)