1.JVM调优参数-参数分类

1.标准参数

不会随着jdk的版本变化而变化,以“-”开头,例如 java -version;java -jar;可以通过java help查看

-Xms4g:初始化的堆大小 ms:memory start  也可以 -XX:InitialHeapSize
-Xmx4g:堆内存的最大值 mx:memory max   也可以 -XX:MaxHeapSize
-Xmn1200m:年轻代大小  占3/8左右
-Xss512k:每个线程的堆栈大小,减少这个值 可以生成更多的线程,设置为3k-5k
-XX:NewRatio=4: 年轻代/老年代  年轻的:老年代 1:4 也就是1/5
-XX:ServivorRatio=8 年轻代中的eden与suvivor的比值,两个servivor:eden=2:8 一个survivor占年轻代的1/10
-XX:PermSize=100m :初始化永久代大小
-XX:MaxPermSize: 最大永久代大小
-XX:MaxTenuringThreshold=15 :设置垃圾最大年龄 
-XX:MaxDirectMomorySize=1G :直接内存 Direct buffer memory异常
-XX:+DisableExplicitGC:禁止显示的调用System.gc()方法

2.非标准参数

以“-X”开头,是标准参数的扩展,可能随着jvm的版本变化而变化。可以通过java -X 检索所有非标准参数,例如新生代大小-Xmn,-Xms,-Xmx

3.不稳定参数

主要用于jvm调优和debug ,以“-XX”开头,对jvm的性能影响很大
不稳定参数的语法规则:

  • 布尔类型的参数 例如-XX:+
  • 数字类型参数 例如-XX:+
  • 字符串类型参数 例如XX:HeapDumpPath=./dump.core

3.1 性能参数

用于jvm的性能调优和内存分配控制,例如内存大小

3.2行为参数

用于改变jvm的基础行为,例如GC的方式和算法的选择

3.3 调试参数

用于监控、打印以及输出jvm信息

你可能感兴趣的:(1.JVM调优参数-参数分类)