Java程序员有时候需要了解JVM相关的参数,不管是出于好奇或者工作需要。Oracle的文档中列出了一些,(点击这里),单并不是全部,而且有些参数的设置会默认启用或者关闭其他一些参数,而在某些情况下设置某个参数是不会生效的。还有些时候你想让JVM做某些事情,但是你不知道那个参数可以用。下面介绍一些办法用以列出所有参数,这样你在研究或者Google的时候也比较有明确的目标。
如果你想查看一下线上正在运行的JVM到底设置了那些参数,生效的是那些,可能用到的方法:
1. 在Linux下用ps命令找到启动Java应用时的参数
ps -ef | grep "your java app name"
这个命令会打出你启动Java应用时传给java命令的所有参数,你可以看到里面的JVM参数。
2.直接看启动脚本,或者参数配置
你未必能找到所有设置这JVM参数的地方,容易遗漏。
一般来讲以上两种办法都需要对JVM了如指掌或者非常熟悉,至少对特定的参数。
其实JVM中有一个参数-XX:+PrintFlagsFinal,可以打印出几乎所有的JVM支持的参数以及他们的默认值。如果你想要查看你的Java应用到底使用了那些参数,只要在启动的时候加上这个参数就可以了。
1.查看你使用的JDK支持的参数
java -XX:+UnlockDiagnosticVMOptions -XX:+PrintFlagsFinal -version
2.打印Java应用启用的JVM参数
java -XX:+PrintFlagsFinal -classpath=/path/to/your/libs MainClass
3.如果你的Java应用已经是运行状态了,你想查看某个JVM参数生效没有可以使用jinfo这个工具。比如说大名鼎鼎的G1垃圾回收器,在JDK7update3中不论是客户端(-client)还是服务器(-server)模式下都不是默认启动的。
jinfo是随JDK一起发布的,使用时先用jps找到Java应用的pid。直接运行jinfo可以查看使用说明。
jinfo -flag UseParallelOldGC 31072
-XX:+UseParallelOldGC
JDK中实用的工具还很多,可以逐个的体验一下${JAVA_HOME}/bin目录中的每个命令,有惊喜。
相关推荐
jvm 配置jvm参数 配置jvm参数
JVM参数设置,提供java虚拟机运行时的参数设置
如何配置jvm参数,并且调优,适合各路开发者,
常用jvm参数都在这张图中,参考起来方便,是国外大神整理的
JVM参数使用说明
IBM JVM参数选项 虚拟机参数
其二是非标准参数(-X),默认jvm实现这些参数的功能,但是并不保证所有jvm实现都满足,且不保证向后兼容; 其三是非Stable参数(-XX),此类参数各个jvm实现会有所不同,将来可能会随时取消,需要慎重使用; 本文...
(中英文)JVM 参数详解,用心整理成Excel文档。包含所有近100条JVM参数的详细说明及设置方法,中英文对照,极方便阅读。转载请标明我这的源地址:http://download.csdn.net/download/xiucaiyao/10257573
常用的JVM参数,适合于线上关键业务系统,通用参数设置经验
jvm 参数调优实践,有代码可供参考,详细调优比较!
linux 下jvm基本参数设置 查看linux jvm的设置基本命令
1、JVM参数推荐 2、Java运行时数据区 3、JVM内存模型 4、堆的内存划分 5、垃圾回收(GC) 6、JVM参数汇总
JVM参数调优 及 JAVA相关工具使用
在/usr/local/apache-tomcat-5.5.23/bin目录下的catalina.sh 添加:JAVA_OPTS='-Xms512m -Xmx1024m' 要加“m”说明是MB,否则就是KB了,在启动tomcat时会报内存不足。 -Xms:初始值 -Xmx:最大值 ...
JVM优化3(Tomcat参数调优,JVM参数调优,jvm字节码,代码优化),供大家查阅!!!!!!!!!!!!!!
jvm参数优化后,tomcat稳定可靠,附件为通过长时间在线测试的配置参数文件
详述tomcat服务端配置,使并发更加流畅
深入详解JVM内存模型与JVM参数详细配置,感兴趣的小伙伴们可以一块学习下。
可通过设置jvm参数,提高系统性能。内含一些系统原理。
jvm配置参数详解,以及Java gc详解