HeapAnalyzer一般用法

官方指导文档:https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/W3b463571efc8_4f02_99af_3cbc0da42ddc/page/IBM HeapAnalyzer Information

注1:因为是全英文的,网上很多直译过来的文章让人看的莫名其妙,英语一般的,开个有道,大概浏览一下就可以了。

用HeapAnalyzer工具打开dump文件后,会有很多信息,但对大部分人来说不用研究的那么透彻,也没必要搞清每项信息都是什么意思,只要达到我们的目的就可以了。

我们用HeapAnalyzer分析dump,一般是想搞清是服务器否存在内存泄漏或jvm其他方面的问题,那我们只要关注几个信息就可以了:
1、dump文件打开后
HeapAnalyzer一般用法_第1张图片
根据官方文档的说法,如果服务器存在内存泄漏的可能,那么会出现上图红框所示的“Reference Tree”界面。
也就是说,如果你打开dump文件后,没有找到这个界面,说明你的jvm是正常的。

Reference Tree中列出的是当前堆中占比最大的对象信息,另外也可以通过菜单栏中的“Tree view”选项查看所有对象的的详细信息
HeapAnalyzer一般用法_第2张图片

如果你的文件打开后出现“Reference Tree”界面,在其中选择占比最大一项,一层层点开,最后就会看到你熟悉的类了
HeapAnalyzer一般用法_第3张图片
最后结合你自己的代码就可以推测出问题所在了。

你可能感兴趣的:(java基础)