JVM参数调优
内存相关
Xms
英文解释:Initial heap size(in bytes)
中文释义:堆区初始值
使用方法:-Xms2g 或 -XX:InitialHeapSize=2048m
Xmx
英文解释:Maximum heap size(in bytes)
中文释义:堆区最大值
使用方法:-Xmx2g 或 -XX:MaxHeapSize=2048m
Xmn
英文解释:Maximum new generation size(in bytes)
中文释义:新生代最大值
使用方法:-Xmn512m 或 -XX:MaxNewSize=512m
PermSize
英文解释:Initial size of permanent generation(in bytes)
中文释义:永久代初始值
使用方法:-XX:PermSize=128m
MaxPermSize
英文解释:Maximum size of permanent generation(in bytes)
中文释义:永久代最大值
使用方法:-XX:MaxPermSize=256m
Xss
英文解释:Thread Stack Size(in Kbytes)
中文释义:线程栈最大值
使用方法:-Xss256k 或 -XX:ThreadStackSize=256k
GC策略相关
SurvivorRatio
英文解释:Rato of eden/survivor space size
中文释义:eden区和survivor的比值
使用方法:-XX:SurvivorRatio=6
使用经验:假如设为6,则表示每个survivor区跟eden区的比值为1:6,每个survivor区占新生代的八分之一
PretenureSizeThreshold
英文解释:Maximum size in bytes of objects allocated in DefNew generation;zero means no maximum
中文释义:可以在新生代直接分配的对象最大值,0表示没有最大值
使用方法:-XX:PretenureSizeThreshold=1000000
使用经验:设置该参数,可以使大于这个值的对象直接在老年代分配,避免在Eden区和Survivor区发生大量的内存复制,该参数只对Serial和ParNew收集器有效,Parallel Scavenge并不认识该参数
MaxTenuringThreshold
英文解释:Maximum value fo tenuring threshold
中文释义:年轻代最大年龄
使用方法:-XX:MaxTenuringThreshold=10
使用经验:每个对象在坚持过一次Minor GC之后,年龄就增加1,当超过这个参数值时就进入老年代,最大支持15
UseSerialGC
英文解释:Use the Serial garbage collector
中文释义:年轻代使用Serial垃圾收集器
使用方法:
开启 -XX:+UseSerialGC
关闭 -XX:-UseSerialGC
使用经验