版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/zhou920786312/article/details/84312876
日志关键字简称
PSYoungGen:PS是Parallel Scavenge收集器的缩写,它配套的新生代称为PSYoungGen,新生代又分化eden space、from space和to space这三部分。
ParOldGen:Parallel Scavenge收集器配套的老年代。
Metaspace:Parallel Scavenge收集器配套的永久代。
total & used:总的空间和用掉的空间。
DefNew(Default New Generation):Serial收集器的新生代,Serial收集器的老年代和永久代分别表示为"Tenured"、"Perm"。
垃圾搜集器参数
垃圾搜集器选择参数
名称 | 说明 | 备注 |
---|---|---|
UseSerialGC | 开启此参数使用serial & serial old搜集器(client模式默认值)。 | |
UseParNewGC | 开启此参数使用ParNew & serial old搜集器(不推荐)。 | |
UseConcMarkSweepGC | 开启此参数使用ParNew & CMS(serial old为替补)搜集器。 | |
UseParallelGC | 开启此参数使用parallel scavenge & parallel old搜集器(server模式默认值)。 | |
UseParallelOldGC | 开启此参数在年老代使用parallel old搜集器(该参数在JDK1.5之后已无用)。 |
JVM各个内存区域大小相关参数
名称 | 说明 | 备注 |
---|---|---|
Xms | 堆的初始值。默认为物理内存的1/64,最大不超1G。 | |
Xmx | 堆的最大值。默认为物理内存的1/4,最大不超1G。 | |
Xmn | 新生代的大小。 | |
Xss | 线程栈大小。 | |
PermSize | 永久代初始大小。默认为物理内存的1/64,最大不超1G。 | |
MaxPermSize | 永久代最大值。默认为物理内存的1/4,最大不超1G。 | |
NewRatio | 新生代与年老代的比例。比如为3,则新生代占堆的1/4,年老代占3/4。 | |
SurvivorRatio | 新生代中调整eden区与survivor区的比例,默认为8,即eden区为80%的大小,两个survivor分别为10%的大小。 |
垃圾搜集器性能通用参数
名称 | 说明 | 备注 |
---|---|---|
PretenureSizeThreshold | 晋升年老代的对象大小。默认为0,比如设为10M,则超过10M的对象将不在eden区分配,而直接进入年老代。 | |
MaxTenuringThreshold | 晋升老年代的最大年龄。默认为15,比如设为10,则对象在10次普通GC后将会被放入年老代。 | |
DisableExplicitGC | 禁用System.gc()。 |
并行搜集器参数
名称 | 说明 | 备注 |
---|---|---|
ParallelGCThreads | 回收时开启的线程数。默认与CPU个数相等。 | |
GCTimeRatio | 设置系统的吞吐量。比如设为99,则GC时间比为1/1+99=1%,也就是要求吞吐量为99%。若无法满足会缩小新生代大小。 | |
MaxGCPauseMillis | 设置垃圾回收的最大停顿时间。若无法满足设置值,则会优先缩小新生代大小,仍无法满足的话则会牺牲吞吐量。 |
并发搜集器参数
名称 | 说明 | 备注 |
---|---|---|
CMSInitiatingOccupancyFraction | 触发CMS收集器的内存比例。比如60%的意思就是说,当内存达到60%,就会开始进行CMS并发收集。 | |
UseCMSCompactAtFullCollection | 在每一次CMS收集器清理垃圾后送一次内存整理。 | |
CMSFullGCsBeforeCompaction | 设置在几次CMS垃圾收集后,触发一次内存整理。 |