正如您从以前的文章中可能已经读到的那样,要获得的Java程序员的一项关键技能就是理解和评估JVM的运行状况的能力,例如Java堆内存占用量以及垃圾回收过程。
为了实现上述目标,所有JVM供应商(Oracle,IBM等)都通过verbose:gc参数提供了一种生成和记录运行时JVM和GC活动的方法。 话虽如此,这并不意味着您将不得不永远分析原始GC数据。 过去几年中出现了监视和日志分析器工具,使我们可以更好地“可视化” JVM运行时处理的复杂性。
本文是该系列文章的第一篇,该系列文章向您提供有关如何入门和利用IBM Garbage Collection和Memory Visualizer的教程。 以后的文章将通过示例和问题模拟更详细地介绍GCMV的不同功能。
JVM基础
如果您不熟悉JVM原理和不同的命名约定,那么我建议您先阅读以下文章。 改善Java和JVM故障排除技能就像盖房子一样:在着重完成工作之前,首先要建立坚实的基础和结构。
- ## Sun HotSpot VM
- ## IBM VM
- ## Oracle JRockit VM
- ## Sun(Oracle)– Java内存管理白皮书
- ## OpenJDK –开源Java实现
GC和Memory Visualizer –工具概述
GCMV本质上是由IBM开发的免费工具,它使您可以“可视化”并分析Java应用程序的JVM内存使用情况和垃圾回收活动。 它的报告和数据可视化功能对于了解应用程序的Java堆内存占用量随时间变化的趋势非常有用,并且可以帮助检测内存泄漏等问题。
由于该工具具有解析和解释许多类型的GC日志(Oracle HotSpot,IBM JVM,本机内存日志等)的能力,因此可以实现此类功能。 最后,GCMV还通过其内部统计引擎提供了开箱即用的建议。
GCMV最好与全面的容量计划策略结合使用,因此请从该角度继续进行尽职调查。
现在,本文的其余部分将重点介绍如何快速入门GCMV。
步骤1 –下载IBM Support Assistant
首先,您需要下载并安装IBM Support Assistant(GCMV已安装在IBM Support Assistant Workbench中)。
第2步–将GCMV添加为新的附件
安装ISA之后,您需要按照以下步骤下载GCMV作为ISA加载项:
- 在ISA主屏幕上,选择启动活动>分析问题 。
- 现在选择链接“查找新工具加载项”。
- 展开基于JVM的工具 ,选择并安装IBM Java监视和诊断工具– ISA的垃圾收集和Memory Visualizer 。
- 现在,您应该在“ ISA工具目录”部分下看到GCMV。
步骤3 –加载并可视化您的第一个JVM GC日志示例
现在,您可以使用GCMV加载和分析您的第一个GC日志了!
- 在“工具目录”下,双击GCMV。
- 现在浏览您的计算机,然后选择所需的GC日志 。 现在将开始分析和分析过程…
- 解析过程完成后,您将看到GC数据的图形视图以及许多其他选项。
- 不同Java堆内存空间的利用率可以在左侧找到。 GCMV建议可通过“ 报告”选项卡在图表下找到。
*注意:有关如何从JVM运行时环境获取verbose:gc日志的说明,请参见此处 。
我希望您喜欢这个简短的教程,了解如何开始使用IBM GCMV工具。 下一篇文章将更详细地介绍一些经典的JVM问题模式,例如内存泄漏。 同时,我建议您从应用程序中加载所有可能拥有的GC日志,并开始熟悉GCMV的不同功能。 请随时发表评论或提出任何问题。
翻译自: https://www.javacodegeeks.com/2013/06/gc-memory-visualizer-tutorial-part1.html