GCViewer详解(定义作用及使用图解)

GCViewer详解(定义作用及使用图解)-mikechen

GCViewer属于JVM性能调优的必备工具,可以帮助用于JVM GC分析,下面我来重点详解GCViewer@mikechen

GCViewer定义

GCViewer详解(定义作用及使用图解)-mikechen

GCViewer是一个Java GC日志分析工具,它可以分析并可视化Java虚拟机在运行过程中生成的GC日志。

 

GCViewer作用

GCViewer的主要作用如下:

1.可视化GC日志

GCViewer可以将GC日志可视化为图形化界面,以便开发人员更直观地了解GC日志的内容和趋势。

2.分析GC性能

GCViewer可以分析GC日志并提供有关GC性能的详细信息,例如GC时间、各种GC事件的数量、内存使用情况和吞吐量等,帮助开发人员确定应用程序的GC性能问题。

3.诊断内存泄漏

GCViewer可以帮助开发人员诊断内存泄漏问题,识别那些导致内存泄漏的对象并进一步优化应用程序。

 

GCViewer使用

1.下载和安装GCViewer

GCViewer可以从其官方网站上下载:

https://github.com/chewiebug/GCViewer

或者通过Maven等构建工具进行安装。

 

2.生成GC日志

命令:

java -Xloggc:gc.log -XX:+PrintGCDetails -XX:+PrintGCDateStamps 

这会将GC日志记录到名为“gc.log”的文件中,并包含有关GC事件的详细信息。

 

3.用GCViewer加载GC日志

启动GCViewer,并将GC日志加载到GCViewer中,如下图所示:

GCViewer详解(定义作用及使用图解)-mikechen

GCViewer 有两个部分,一个是左侧的图表,另一个是右侧的数据面板。

1.图表

GCViewer 在图表中显示多条线等,可以点击 View 按钮选择显示哪些线条。

如下图所示:

GCViewer详解(定义作用及使用图解)-mikechen

其中黑色的竖线表示 Full GC,这样的线越少越好,就像上图所示,Full GC 后老年代并没有释放多少空间,所以才会抛出 OOM 异常。

 

2.数据面板

点击Summary,如下图所示:

GCViewer详解(定义作用及使用图解)-mikechen

下面列一些关键的说明:

  • Max heap after full GC:Full GC 后的堆内存大小;
  • Total Time:GC 总耗时;
  • Accumulated Pauses:GC 过程中暂停总时长;
  • Throughput(吞吐量):上图显示是 98.56%,一般要求吞吐量至少为 90%。

以上就是GCViewer的详解,更多JVM请查看:JVM(Java虚拟机)从0到1全部合集

陈睿mikechen

10年+大厂架构经验,资深技术专家,就职于阿里巴巴、淘宝、百度等一线互联网大厂。

关注「mikechen」公众号,获取更多技术干货!

后台回复面试即可获取《史上最全阿里Java面试题总结》,后台回复架构,即可获取《阿里架构师进阶专题全部合集

评论交流
    说说你的看法