JAVA學習筆記--GC日志解析

JAVA學習筆記--GC日志解析

https://my.oschina.net/u/2269952/blog/531558
轉發文章,記錄下來,便于以后工作查詢

1、相關命令

使用GC日志命令行選項為:

    -XX:+PrintGC 輸出GC日志
    -XX:+PrintGCDetails 輸出GC的詳細日志
    -XX:+PrintGCTimeStamps 輸出GC的時間戳(以基準時間的形式)
    -XX:+PrintGCDateStamps 輸出GC的時間戳(以日期的形式,如 2013-05-04T21:53:59.234+0800)
    -Xloggc:<filename> 可以指定文件路徑
    // 如配置:-XX:+PrintGCDetails -XX:+PrintGCTimeStamps

2、詳解

JVM【-server】

glassfish應用服務器 -server 啟動 垃圾收集器默認組合方式為

新生代:Parallel Scavenge 并行回收GC
年老代和持久代:Parallel Old并行GC

Minor GC輸出格式:

293.271: [GC [PSYoungGen: 300865K->6577K(310720K)] 392829K->108873K(417472K), 0.0176464 secs] [Times: user=0.06 sys=0.00, real=0.01 secs] 

說明:

293.271是從jvm啟動直到垃圾收集發生所經歷的時間,GC表示這是一次Minor GC(新生代垃圾收集);

[PSYoungGen: 300865K->6577K(310720K)] 提供了新生代空間的信息,PSYoungGen,表示新生代使用的是多線程垃圾收集器Parallel Scavenge。(DefNew:Serial收集器;ParNew:ParNew收集器),300865K表示垃圾收集之前新生代占用空間,6577K表示垃圾收集之后新生代的空間。新生代又細分為一個Eden區和兩個Survivor區,Minor GC之后Eden區為空,6577K就是Survivor占用的空間。括號里的310720K表示整個年輕代的大小。

392829K->108873K(417472K),表示垃圾收集之前(392829K)與之后(108873K)Java堆的大小(總堆417472K,堆大小包括新生代和年老代)由新生代和Java堆占用大小可以算出年老代占用空間,如,Java堆大小417472K,新生代大小310720K那么年老代占用空間是417472K-310720K=106752k;垃圾收集之前老年代占用的空間為392829K-300865K=91964k 垃圾收集之后老年代占用空間108873K-6577K=102296k.

0.0176464 secs表示垃圾收集過程所消耗的時間。

[Times: user=0.06 sys=0.00, real=0.01 secs] 提供cpu使用及時間消耗,user是用戶模式垃圾收集消耗的cpu時間,實例中垃圾收集器消耗了0.06秒用戶態cpu時間,sys是消耗系統態cpu時間,real是指垃圾收集器消耗的實際時間。

Full GC輸出格式:

293.289: [Full GC [PSYoungGen: 6577K->0K(310720K)] [PSOldGen: 102295K->102198K(134208K)] 108873K->102198K(444928K) [PSPermGen: 59082K->58479K(104192K)], 0.3332354 secs] [Times: user=0.33 sys=0.00, real=0.33 secs] 

說明:

Full GC表示執行全局垃圾回收

[PSYoungGen: 6577K->0K(310720K)] 提供新生代空間信息,解釋同上
[PSOldGen: 102295K->102198K(134208K)]提供了年老代空間信息;
108873K->102198K(444928K)整個堆空間信息;
[PSPermGen: 59082K->58479K(104192K)]提供了持久代空間信息。


JVM【-client】

glassfish應用服務器 默認 -client啟動 垃圾收集器默認組合方式為

新生代:Serial串行GC (新生代使用-XX:+UseSerialGC收集器)
年老代和持久代:Serial Old 串行GC

GC日志打印信息:

Minor GC輸出格式:

9.007: [GC 9.007: [DefNew: 13526K->1060K(14400K), 0.0041350 secs] 44692K->32226K(46108K), 0.0041767 secs] [Times: user=0.01 sys=0.00, real=0.01 secs] 

說明:

DefNew表示新生代使用Serial串行GC垃圾收集器,defNew提供新生代空間信息;

DefNewGeneration 就是 default new generation

Full GC輸出格式:

9.348: [GC 9.348: [DefNew: 13953K->976K(14400K), 0.0040943 secs]9.352: [Tenured: 32163K->32220K(32220K), 0.1182207 secs] 45514K->32338K(46620K), [Perm : 30467K->30467K(65536K)], 0.1224318 secs] [Times: user=0.12 sys=0.00, real=0.13 secs] 

DefNew:表示新生代使用Serial串行GC垃圾收集器,defNew提供新生代空間信息;
Tenured:提供年老代空間信息;
45514K->32338K(46620K):整個堆空間大小信息;
Perm :提供持久代空間信息;

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 227,533評論 6 531
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 98,055評論 3 414
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 175,365評論 0 373
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 62,561評論 1 307
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 71,346評論 6 404
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 54,889評論 1 321
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 42,978評論 3 439
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,118評論 0 286
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 48,637評論 1 333
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 40,558評論 3 354
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 42,739評論 1 369
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,246評論 5 355
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 43,980評論 3 346
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,362評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 35,619評論 1 280
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,347評論 3 390
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 47,702評論 2 370

推薦閱讀更多精彩內容

  • 1.什么是垃圾回收? 垃圾回收(Garbage Collection)是Java虛擬機(JVM)垃圾回收器提供...
    簡欲明心閱讀 89,720評論 17 311
  • 原文閱讀 前言 這段時間懈怠了,罪過! 最近看到有同事也開始用上了微信公眾號寫博客了,挺好的~給他們點贊,這博客我...
    碼農戲碼閱讀 6,001評論 2 31
  • 這篇文章是我之前翻閱了不少的書籍以及從網絡上收集的一些資料的整理,因此不免有一些不準確的地方,同時不同JDK版本的...
    高廣超閱讀 15,650評論 3 83
  • JVM架構 當一個程序啟動之前,它的class會被類裝載器裝入方法區(Permanent區),執行引擎讀取方法區的...
    cocohaifang閱讀 1,683評論 0 7
  • 作者:一字馬胡 轉載標志 【2017-11-12】 更新日志 日期更新內容備注 2017-11-12新建文章初版 ...
    beneke閱讀 2,220評論 0 7