不同场景下JVM参数的设置
上篇文章讲了关于maven JVM的参数设置,下面总结下web开发中经常碰到的JVM的参数设置。
1,Eclipse的jvm参数配置
eclipse通过eclipse安装目下的eclipse.ini文件设置jvm参数,比如:
-vmargs //这个表示vm参数 -Dosgi.requiredJavaVersion=1.5 -Xms512m -Xmx512m -XX:PermSize=256M -XX:MaxPermSize=512M
重新安装了一个eclipse,却发现eclipse无法启动,有时候是因为找不到vm即找不到本地安装的jdk,也是通过修改该文件中的参数,例如:
-vm D:/Program Files/Java/jdk1.6.0_10/bin/javaw.exe //本地jdk安装目录路径
如果修改了该文件后还是不能启动eclipse,文件编写格式和规范的问题以外,一般都是因为参数本身设置的不合理。比如-Xms的值大于-Xmx, 或者-XX:PermSize的值大于-XX:MaxPermSize,或者-Xmx的值、-XX:MaxPermSize的值、其他进程和系统占用的内存、和硬件占用的内存的总和超过了实际物理内存。
2,进行单元测试或者单个类(有main方法的类)运行时设置jvm参数,只对单个运行的类有效
右击需要执行的类选择run as->run configuration,单个类找到Java Application ,单元测试找到Junit打开tab Arguments 看到VM arguments 输入我们想要设置的jvm参数,点击run即可。
3,为eclipse加载的某个jdk和jre配置JVM参数,
windows->preferences->java->installed jres->选中安装jdk or jre进行编辑->在default vm arguments中输入需要配置的参数:
4,web服务器参数配置
tomcat:默认可以使用的内存为128M,win下,在文件{tomcat_home}/bin/catalina.bat,Unix下,在文件{tomcat_home}/bin/catalina.sh的前面,增加如下设置:
JAVA_OPTS=’-Xms[初始化内存大小] -Xmx[可以使用的最大内存]’
参数 描述 -Xms JVM初始化堆的大小
-Xmx JVM堆的最大值,一般说来,你应该使用物理内存的80% 作为堆大小。
例如:JAVA_OPTS=”-Xms256 -Xmx512″
jboss :编辑{jboss_home}/bin/run.conf, 在文件的底部找到对参数JAVA_OPTS进行设置的地方。这个参数会最后传到jvm里
5,maven的jvm设置
可参见上篇文章