最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

JVM的GC日志及運(yùn)行參數(shù)解讀

 更新時(shí)間:2023年09月03日 14:21:57   作者:jacheut  
這篇文章主要為大家介紹了JVM的GC日志及運(yùn)行參數(shù)解讀,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

正文 

{Heap before GC invocations=35866 (full 34):
 par new generation   total 290176K, used 287809K [0x00000000d4400000, 0x00000000e7000000, 0x00000000e7000000)
  eden space 273152K, 100% used [0x00000000d4400000, 0x00000000e4ec0000, 0x00000000e4ec0000)
  from space 17024K,  86% used [0x00000000e4ec0000, 0x00000000e5d10770, 0x00000000e5f60000)
  to   space 17024K,   0% used [0x00000000e5f60000, 0x00000000e5f60000, 0x00000000e7000000)
 concurrent mark-sweep generation total 409600K, used 159259K [0x00000000e7000000, 0x0000000100000000, 0x0000000100000000)
 Metaspace       used 137146K, capacity 146452K, committed 147072K, reserved 378880K
  class space    used 15581K, capacity 17238K, committed 17536K, reserved 247808K
2023-09-02T01:18:40.811+0000: 142176.656: [GC (Allocation Failure) 2023-09-02T01:18:40.811+0000: 142176.657: [ParNew: 287809K->13868K(290176K), 0.0142053 secs] 447069K->173146K(699776K), 0.0144550 secs] [Times: user=0.01 sys=0.00, real=0.01 secs]
Heap after GC invocations=35867 (full 34):
 par new generation   total 290176K, used 13868K [0x00000000d4400000, 0x00000000e7000000, 0x00000000e7000000)
  eden space 273152K,   0% used [0x00000000d4400000, 0x00000000d4400000, 0x00000000e4ec0000)
  from space 17024K,  81% used [0x00000000e5f60000, 0x00000000e6ceb260, 0x00000000e7000000)
  to   space 17024K,   0% used [0x00000000e4ec0000, 0x00000000e4ec0000, 0x00000000e5f60000)
 concurrent mark-sweep generation total 409600K, used 159277K [0x00000000e7000000, 0x0000000100000000, 0x0000000100000000)
 Metaspace       used 137146K, capacity 146452K, committed 147072K, reserved 378880K
  class space    used 15581K, capacity 17238K, committed 17536K, reserved 247808K
}

 一段GC日志

 JVM參數(shù)為:-Xms700m -Xmx700m -Xmn300m -XX:MetaspaceSize=250m -XX:MaxMetaspaceSize=250m -XX:SurvivorRatio=16

如上是一段GC日志,先來(lái)解讀這一行:

2023-09-02T01:18:40.811+0000: 142176.656: [GC (Allocation Failure) 2023-09-02T01:18:40.811+0000: 142176.657: [ParNew: 287809K->13868K(290176K), 0.0142053 secs] 447069K->173146K(699776K), 0.0144550 secs] [Times: user=0.01 sys=0.00, real=0.01 secs]

2023-09-02T01:18:40.811+0000:表示的是一個(gè)日期格式

142176.656:系統(tǒng)運(yùn)行142176.656秒的時(shí)候發(fā)生。

GC:表明進(jìn)行一次垃圾回收,前面沒(méi)有Full修飾,表明這是一次Minor GC。注意它不是表示只GC新生代。

(Allocation Failure):表示本次引起GC的原因是因?yàn)樵谀贻p代中沒(méi)有足夠的空間能夠存儲(chǔ)新的數(shù)據(jù)了。

ParNew:表明本次GC發(fā)生在年輕代并且使用的是ParNew垃圾收集器。ParNew是一個(gè)Serial收集器的多線程版本,會(huì)使用多個(gè)CPU和線程完成垃圾收集工作(默認(rèn)使用的線程數(shù)和CPU數(shù)相同,可以使用-XX: ParallelGCThreads參數(shù)限制)。該收集器采用復(fù)制算法回收內(nèi)存,期間會(huì)停止其他工作線程,即Stop The World。

287809K->13868K(290176K):?jiǎn)挝皇荎B
三個(gè)參數(shù)分別為:GC前該內(nèi)存區(qū)域(這里是年輕代)使用容量,GC后該內(nèi)存區(qū)域使用容量,該內(nèi)存區(qū)域的總?cè)萘浚‥den區(qū) + 1個(gè)Survivor區(qū))。

0.0142053 secs:該內(nèi)存區(qū)域GC耗時(shí),單位是秒。

447069K->173146K(699776K):三個(gè)參數(shù)分別為:堆區(qū)垃圾回收前的大小,堆區(qū)垃圾回收后的大小,堆區(qū)總大小。

0.0144550 secs:該內(nèi)存區(qū)域GC耗時(shí),單位是秒。

[Times: user=0.01 sys=0.00, real=0.01 secs]:分別表示用戶態(tài)耗時(shí),內(nèi)核態(tài)耗時(shí)和總耗時(shí)。

其他日志解讀

如果設(shè)置了 PrintHeapAtGC 參數(shù),則 HotSpot 在 GC 前后都會(huì)將 GC 堆的概要信息輸出出來(lái)。
Heap before GC 和 Heap after GC 分別表示 GC 前后堆的信息的開始,invocations 表示 GC 的次數(shù),可以看到 后面跟了個(gè) invocations,這里 invocations 表示總的 GC 次數(shù),可以發(fā)現(xiàn)在 after 之后,invocations 自增了,而 full 表示第幾次 Full GC。
invocations 會(huì)隨著系統(tǒng)運(yùn)行一直自增下去,通過(guò)這些信息可以很輕松的統(tǒng)計(jì)出一段時(shí)間的 GC 次數(shù)。

Heap before GC invocations=35866 (full 34):
 par new generation   total 290176K, used 287809K [0x00000000d4400000, 0x00000000e7000000, 0x00000000e7000000)
  eden space 273152K, 100% used [0x00000000d4400000, 0x00000000e4ec0000, 0x00000000e4ec0000)
  from space 17024K,  86% used [0x00000000e4ec0000, 0x00000000e5d10770, 0x00000000e5f60000)
  to   space 17024K,   0% used [0x00000000e5f60000, 0x00000000e5f60000, 0x00000000e7000000)
Heap after GC invocations=35867 (full 34):
par new generation   total 290176K, used 13868K [0x00000000d4400000, 0x00000000e7000000, 0x00000000e7000000)
  eden space 273152K,   0% used [0x00000000d4400000, 0x00000000d4400000, 0x00000000e4ec0000)
  from space 17024K,  81% used [0x00000000e5f60000, 0x00000000e6ceb260, 0x00000000e7000000)
  to   space 17024K,   0% used [0x00000000e4ec0000, 0x00000000e4ec0000, 0x00000000e5f60000)

再看下面的日志,可以看到年輕代和老年代所使用的垃圾回收器,以及各自的情況。

新生代 par new generation 表示使用 ParNew 作為垃圾回收器,一共 290176 K 大小,使用了 287809 K 大小。其中 eden 區(qū)已經(jīng)滿了,from survivor 用了 86%,to survivor 用了 0%,每個(gè)后面都跟了內(nèi)存地址,頭一個(gè)表示起始地址,第二個(gè)表示當(dāng)前用到的最大地址,第三個(gè)表示終止地址。
觀察 before 和 after,細(xì)心點(diǎn)可以觀察到 from 和 to 的地址對(duì)調(diào)了。

緊跟著 par new generation 后面的是 concurrent mark-sweep generation,總共的量409600K,使用的量159277K,地址可以清楚的看到,后面跟著的三個(gè)參數(shù)同樣是起止地址,而第二個(gè)和第三個(gè)是相同的。
此外還給出了 Metaspace 的使用情況,以及 class space 的使用情況。這兩個(gè)值初始會(huì)比較小,在使用過(guò)程中會(huì)容量會(huì)逐步擴(kuò)大。

  • used:加載的類的空間量。
  • capacity: 當(dāng)前分配塊的元數(shù)據(jù)的空間。
  • committed: 空間塊的數(shù)量。
  • reserved:元數(shù)據(jù)的空間保留(但不一定提交)的量。

以上就是JVM的GC日志及運(yùn)行參數(shù)解讀的詳細(xì)內(nèi)容,更多關(guān)于JVM GC日志解讀的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • Spring注解之@Import使用方法講解

    Spring注解之@Import使用方法講解

    @Import是Spring基于Java注解配置的主要組成部分,下面這篇文章主要給大家介紹了關(guān)于Spring注解之@Import的簡(jiǎn)單介紹,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-01-01
  • Java?在?Array?和?Set?之間進(jìn)行轉(zhuǎn)換的示例

    Java?在?Array?和?Set?之間進(jìn)行轉(zhuǎn)換的示例

    這篇文章主要介紹了Java如何在Array和Set之間進(jìn)行轉(zhuǎn)換,在本文章中,我們對(duì)如何在?Java?中對(duì)Array和Set進(jìn)行轉(zhuǎn)換進(jìn)行一些說(shuō)明和示例,需要的朋友可以參考下
    2023-05-05
  • Springboot實(shí)例講解實(shí)現(xiàn)專業(yè)材料認(rèn)證管理系統(tǒng)流程

    Springboot實(shí)例講解實(shí)現(xiàn)專業(yè)材料認(rèn)證管理系統(tǒng)流程

    這是一個(gè)基于java的畢業(yè)設(shè)計(jì)項(xiàng)目,畢設(shè)課題為springboot框架的知識(shí)產(chǎn)權(quán)服務(wù)平臺(tái)系統(tǒng),是一個(gè)采用b/s結(jié)構(gòu)的javaweb項(xiàng)目,需要的朋友可以參考下
    2022-06-06
  • 創(chuàng)建動(dòng)態(tài)代理對(duì)象bean,并動(dòng)態(tài)注入到spring容器中的操作

    創(chuàng)建動(dòng)態(tài)代理對(duì)象bean,并動(dòng)態(tài)注入到spring容器中的操作

    這篇文章主要介紹了創(chuàng)建動(dòng)態(tài)代理對(duì)象bean,并動(dòng)態(tài)注入到spring容器中的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2021-02-02
  • 詳解Java序列化如何破壞單例模式

    詳解Java序列化如何破壞單例模式

    這篇文章主要為大家詳細(xì)介紹了Java序列化是如何破壞單例模式的,文中的示例代碼講解詳細(xì),具有一定的借鑒價(jià)值,感興趣的小伙伴可以學(xué)習(xí)一下
    2023-12-12
  • Spring Boot 啟動(dòng)流程解析

    Spring Boot 啟動(dòng)流程解析

    Spring Boot 是一個(gè)簡(jiǎn)化的 Spring 應(yīng)用開發(fā)框架,它以 “約定優(yōu)于配置” 的理念,為開發(fā)者提供了開箱即用的功能,本文將詳細(xì)剖析其內(nèi)部實(shí)現(xiàn),幫助你深入理解 Spring Boot 的啟動(dòng)機(jī)制,感興趣的朋友跟隨小編一起看看吧
    2024-12-12
  • 淺談Java中GuavaCache返回Null的注意事項(xiàng)

    淺談Java中GuavaCache返回Null的注意事項(xiàng)

    Guava在實(shí)際的Java后端項(xiàng)目中應(yīng)用的場(chǎng)景還是比較多的,比如限流,緩存,容器操作之類的,本文主要介紹了GuavaCache返回Null的注意事項(xiàng),感興趣的可以了解一下
    2021-10-10
  • Java多線程批量數(shù)據(jù)導(dǎo)入的方法詳解

    Java多線程批量數(shù)據(jù)導(dǎo)入的方法詳解

    這篇文章主要介紹了Java多線程批量數(shù)據(jù)導(dǎo)入的方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,下面小編和大家來(lái)一起學(xué)習(xí)下吧
    2019-06-06
  • java數(shù)據(jù)結(jié)構(gòu)與算法之簡(jiǎn)單選擇排序詳解

    java數(shù)據(jù)結(jié)構(gòu)與算法之簡(jiǎn)單選擇排序詳解

    這篇文章主要介紹了java數(shù)據(jù)結(jié)構(gòu)與算法之簡(jiǎn)單選擇排序,結(jié)合實(shí)例形式分析了選擇排序的原理、實(shí)現(xiàn)方法與相關(guān)操作技巧,需要的朋友可以參考下
    2017-05-05
  • 關(guān)于Spring的@Autowired依賴注入常見錯(cuò)誤的總結(jié)

    關(guān)于Spring的@Autowired依賴注入常見錯(cuò)誤的總結(jié)

    有時(shí)我們會(huì)使用@Autowired自動(dòng)注入,同時(shí)也存在注入到集合、數(shù)組等復(fù)雜類型的場(chǎng)景。這都是方便寫 bug 的場(chǎng)景,本篇文章帶你了解Spring @Autowired依賴注入的坑
    2021-09-09

最新評(píng)論

屯门区| 叙永县| 陵川县| 封开县| 阿巴嘎旗| 潼南县| 中卫市| 蕲春县| 沙河市| 灯塔市| 通化县| 扎鲁特旗| 南昌市| 大冶市| 宝丰县| 拉孜县| 西藏| 抚宁县| 玛沁县| 乐亭县| 寻甸| 贵州省| 安化县| 新巴尔虎右旗| 宣城市| 锡林浩特市| 南城县| 唐海县| 江津市| 常熟市| 通州区| 新丰县| 德庆县| 四子王旗| 永宁县| 万源市| 霍林郭勒市| 东台市| 长顺县| 内黄县| 特克斯县|