Tomcat内存优化主要是对 tomcat 启动参数优化参数。
1.linux 下调整tomcat的内存设置
修改bin目录下catalina.sh文件
在cygwin=false之上
添加以下语句
JAVA_OPTS="-Xms1024m -Xmx4096m -Xss1024K -XX:PermSize=512m -XX:MaxPermSize=2048m"
其中-xms为jvm初始化堆的大小,-xmx为jvm堆的最大值
-
window 下调整tomcat的内存设置
修改bin目录下catalina.bat文件@echo off下追加
set JAVA_OPTS=-XX:PermSize=64M -XX:MaxPermSize=128m -Xms512m -Xmx1024m3.eclipse下修改外置tomcat的内存设置
open launch configuration=>arguments=>vm arguments
追加-Xms1024M -Xmx4096M -XX:PermSize=512m -XX:MaxPermSize=2048m
JAVA_OPTS参数说明
-server:一定要作为第一个参数,在多个CPU时性能佳
-Xms:java Heap初始大小。 默认是物理内存的1/64。
-Xmx:java heap最大值。建议均设为物理内存的一半。不可超过物理内存。
-XX:PermSize:设定内存的永久保存区初始大小。缺省值为64M。
-XX:MaxPermSize:设定内存的永久保存区最大 大小。缺省值为64M。
-Xmn:young generation(年轻代)的heap大小。一般设置为Xmx的3、4分之一 (Sun官方推荐配置为整个堆的3/8。)
注意:若是32位机器 32位系统下最高能够使用2GB内存(理论值)
在设这个最大内存即Xmx值时请先用一个命令行,测试一下是否可以设置,虽然理论上可以设置某些值,但实际还是有差异:
可以用 java -Xmx2048m -version 运行是否返回jdk版本,若成功显示这可以设置,一般情况下比2gb 值小。
配置完成后可重启Tomcat ,通过以下命令进行查看配置是否生效:
首先查看Tomcat 进程号:
sudo lsof -i:9027
我们可以看到Tomcat 进程号是 12222 。
查看是否配置生效:
sudo jmap – heap 12222
我们可以看到MaxHeapSize 等参数已经生效。
网友评论