JVM 参数设置及分析

JVM 相关参数

参数名称 含义 默认值 备注
-Xms 初始堆大小 物理内存的1/64且<1G 默认(MinHeapFreeRatio参数可以调整)空余堆内存小于40%时,JVM就会增大堆直到-Xmx的最大限制.
-Xmx 最大堆大小 物理内存的1/4且<1G 默认(MaxHeapFreeRatio参数可以调整)空余堆内存大于70%时,JVM会减少堆直到 -Xms的最小限制.
-Xmn 新生代大小(JDK 1.4 or lator) 此处的大小是(eden+ 2 survivor space).与jmap -heap中显示的New gen是不同的。整个堆大小=年轻代大小 + 年老代大小 + 持久代大小.增大年轻代后,将会减小年老代大小.此值对系统性能影响较大,Sun官方推荐配置为整个堆的3/8
-XX:SurvivorRatio Eden区与Survivor区的大小比值 设置为8,则两个Survivor区与一个Eden区的比值为2:8,一个Survivor区占整个年轻代的1/10
-XX:+TraceClassLoading 输出虚拟机的类加载列表 * *
-verbose:gc 输出JVM的GC情况 * *
-XX:+PrintGCDetails 打印GC的详细情况 * *
-XX:+HeapDumpOnOutOfMemoryError 让虚拟机在出现内存溢出异常时Dump出当前的内存堆转储快照 * *
-Xss 设置每个线程的栈大小 1024k *