前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >JVM笔记九-GC收集器日志信息学习

JVM笔记九-GC收集器日志信息学习

原创
作者头像
凯哥Java
修改2020-11-23 10:29:17
4920
修改2020-11-23 10:29:17
举报
文章被收录于专栏:凯哥Java

在上一篇文章中,我们通过代码运行结果,查看到JVM的堆内存逻辑上分区是三部分,物理上分区是2部分,以及是新生代分区三部分,占比分布是8/1/1。而且我们还通过代码和堆JVM参数配置,制造出了OOM异常。下面我们就来分析GC回收器的日志信息。

先来看看,OOM后,GC详细日志信息:

编辑

编辑

新生区的伊甸园区GC日志分析

新生区的Eden区的GC,叫法:GC或者是YGC或者是MinorGC或者是轻GC

我们复制一条来分析:

[GC (Allocation Failure①) [PSYoungGen: 1877K②->472K③(2048K④)] 3697⑤K->2835K⑥(7680K⑦), 0.0010223⑧ secs] [Times: user=0.00⑨ sys=0.00⑩, real=0.00 secs]

编辑

分段说明:

  1. :GC的类型;
  2. :YongGC前新生代的内存占用量
  3. :YoungGC后新生代的内存占用量;
  4. :新生代总内存大小;
  5. :YoungGC前JVM堆内存占用量;
  6. :YoungGc后JVM堆内存使用量;
  7. :JVM堆内存总大小;
  8. :YoungGC耗时
  9. :YoungGC用户耗时;
  10. :YoungGC系统耗时
  11. :YoungGC实际耗时

年老代GC日志分析:

年老代GC的叫法:Full GC或者FGC或者MajorGC或者重GC

同样,我们拿出OOM之前的一条GC日志进行分析

[Full GC (Ergonomics①) [PSYoungGen②: 96K③->0K④ (2048K⑤)] [ParOldGen⑥: 5094K⑦->4007K⑧ (5632K⑨)] 5190K⑩->4007K十一 (7680K十二), [Metaspace十三: 3314K十四 ->3314K 十五(1056768K十六)], 0.0074234 secs十七] [Times: user=0.08十八 sys=0.01十九, real=0.01 secs二十]:

标志说明:

  1. :GC类型
  2. :Young区
  3. :GC前Young区内存占用
  4. :GC后Young区内存占用
  5. :Young区总大小
  6. :Old区
  7. :GC前Old区内存占用
  8. :GC后Old区内存占用
  9. :Old区总大小
  10. :GC前堆内存占用
  11. :GC后堆内存占用
  12. :JVM堆内存总大小
  13. :元空间区
  14. :GC前占用内存
  15. :GC后占用内存
  16. :元空间总大小
  17. :GC耗时
  18. :用户耗时
  19. :系统耗时
  20. :实际耗时

如下图:

编辑

接下来,我们继续学习的是JVM垃圾回收的四种算法了。欢迎大家和凯哥(凯哥Java:kaigejava)继续一起学习:引用计数算法、复制算法、标记清除、标记压缩这四种算法。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 新生区的伊甸园区GC日志分析
  • 年老代GC日志分析:
相关产品与服务
Elasticsearch Service
腾讯云 Elasticsearch Service(ES)是云端全托管海量数据检索分析服务,拥有高性能自研内核,集成X-Pack。ES 支持通过自治索引、存算分离、集群巡检等特性轻松管理集群,也支持免运维、自动弹性、按需使用的 Serverless 模式。使用 ES 您可以高效构建信息检索、日志分析、运维监控等服务,它独特的向量检索还可助您构建基于语义、图像的AI深度应用。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档