GC日誌分析 & GC經常使用參數

1:GC日誌分析
    
    最前面的數字  33.125  100.667 表明了 GC的執行時間,是從 Java虛擬機啓動以來通過的秒數

     「GC」「Full GC」說明了此次 垃圾收集的停頓類型。若是有 「Full」則說明 GC 發生了  「Stop-The-World」

    "DefNew"、"Tenured"、"Perm" 表示 GC 發生的區域

     3324K -> 152K 表示  「 GC 前該內存區域已使用容量 」-> " GC後該內存區域已使用容量 "

    方括號外的  3324K -> 152K (11904K) 表示 「 GC前Java堆已使用容量」-> " GC後Java堆使用容量 "(Java堆總容量)

     0.0031680 secs 表示該區域內 GC所佔用時間


2:GC經常使用參數
參數
描述
UseSeriaGC
虛擬機運行在Client模式下的默認值,打開此開關後,使用Serial+Serial Old的收集器組合進行回收
UseParNewGC
打開此開關後,使用ParNew + Serial Old的收集器進行內存回收
UseConcMarkaSweepGC
打開此開關後,使用ParNew + CMS + Serial Old 的收集器組合進行內存回收。Serial Old收集器將做爲CMS收集器出現Concurrent Model Failure 失敗後後背收集器使用
UseParallelGC
虛擬機在Server模式下默認值,打開此開關後,使用Parallel Scavenge + Parallel Old的收集器組合進行內存回收。
SurvivorRatio
新生代中Eden區域與Survivor區域比值,默認值爲8,表明Eden:Survivor = 8:1
PretenureSizeThreshold
直接晉升到老年代對象的大小,設置這個參數後,大於這個參數的對象直接分配在老年代
MaxTenuringThreshold
晉升到老年代對象的年齡,每一個對象在堅持過一次Minor GC後,年齡加1,當超過這個參數值以後就進入老年代。
UseAdaptiveSizePolicy
動態調整Java堆中各個區域的大小以及進入老年代的年齡
HandlePromotionFailure
是否容許分配擔保失敗,即老年代的剩餘空間不足以應付新生代的整個Eden 和 Survivor區的全部對象都存活的極端狀況
ParallelGCThreads
設置並行GC時進行內存回收的線程數
GCTimeRadio
GC時間佔總時間的比例,默認值是99,即容許1%的GC時間。僅僅在Parallel Scavenge
收集器時生效
MaxGCPauseMillis
設置GC最大停頓時間。僅在使用 Parallel Scavenge收集器時生效
CMSInitiatingOccupancyFraction
設置CMS收集器在老年代空間被使用多少後出發垃圾收集,默認值是68%,
僅在CMS收集器中生效
UserCMSCompactAtFullCollection
設置CMS收集器在完成垃圾收集後是否進行一次內存碎片整理。 僅在CMS收集器中生效
CMSFullGCBeforeCompacion
設置CMS收集器在進行若干次垃圾收集後啓動一次內存碎片整理 僅在CMS收集器中生效
相關文章
相關標籤/搜索