手头有个项目,还在测试阶段,运行了也有将近半年时间了,一直也没去优化JVM配置,这几天呢,正好有空,就准备处理下,也把一些需要的参数整理下,已备后用。
JVM参数分类
- “-“开头的参数:标准参数,所有的JVM实现都必须实现这些参数的功能,而且向后兼容。
- “-X”开头的参数:非标准参数,也就是只能被部分VM识别,而不能被全部VM识别的参数。
- “-XX”开头的参数:非稳定参数,随时可能被修改或者移除。
标准参数
标准参数直接通过:java -help 命令就可以查看到,如下图:
java -help 命令查看标准参数
非标准参数
-X非标准参数通过命令:java -X 查看,如下图:
java -X 查看非标准参数
常用且重要参数:
JVM常用非标准参数
非稳定参数
-XX非稳定参数,随时可能被修改或者移除,所以在使用的时候需要查询确认下。
-XX使用语法:
1. -XX:+[PARAM], 开启该参数的功能,如-XX:+DisableExplicitGC,开启禁止显式GC
2. -XX:-[PARAM], 关闭该参数的功能,如-XX😀isableExplicitGC,关闭禁止显示GC
3. -XX😛ARAM=VALUE, 设置参数的值,如-XX:SurvivorRatio=80,设置eden/survivor的比值
常用且重要参数:
JVM常用非稳定参数
G1参数
G1全称是Garbage First Garbage Collector,是JDK9的默认垃圾回收器。JDK7/8已有,默认关闭。使用G1的目的是简化性能优化的复杂性。
G1垃圾回收器常用参数
JDK7/8/9默认垃圾回收器
常用的一些垃圾回收器
上图是目前常用的一些垃圾回收器和垃圾回收算法,不同版本的JVM所提供的垃圾收集器可能会有很在差别。
JDK7 默认垃圾收集器Parallel Scavenge(新生代)+Parallel Old(老年代)
JDK8 默认垃圾收集器Parallel Scavenge(新生代)+Parallel Old(老年代)
JDK9 默认垃圾收集器G1
具体查看命令有两种:
1. 命令:java -XX:+PrintCommandLineFlags -version
java -XX:+PrintCommandLineFlags -version
2. 命令:java -XX:+PrintGCDetails -version
java -XX:+PrintGCDetails -version
关于我
程序界的老猿,自媒体界的新宠 じ☆ve
程序界的老猿,自媒体界的新宠 じ☆ve
联系方式:1405368512@qq.com
声明:本站部分文章内容及图片转载于互联 、内容不代表本站观点,如有内容涉及侵权,请您立即联系本站处理,非常感谢!