HeapAnalyzer一般用法
注1:因为是全英文的,网上很多直译过来的文章让人看的莫名其妙,英语一般的,开个有道,大概浏览一下就可以了。
用HeapAnalyzer工具打开dump文件后,会有很多信息,但对大部分人来说不用研究的那么透彻,也没必要搞清每项信息都是什么意思,只要达到我们的目的就可以了。
我们用HeapAnalyzer分析dump,一般是想搞清是服务器否存在内存泄漏或jvm其他方面的问题,那我们只要关注几个信息就可以了:
1、dump文件打开后
根据官方文档的说法,如果服务器存在内存泄漏的可能,那么会出现上图红框所示的“Reference Tree”界面。
也就是说,如果你打开dump文件后,没有找到这个界面,说明你的jvm是正常的。
Reference Tree中列出的是当前堆中占比最大的对象信息,另外也可以通过菜单栏中的“Tree view”选项查看所有对象的的详细信息
如果你的文件打开后出现“Reference Tree”界面,在其中选择占比最大一项,一层层点开,最后就会看到你熟悉的类了
最后结合你自己的代码就可以推测出问题所在了。