Java OOM问题定位-思路

思路,个人总结从两个方面

分析gc

对pid 4592 进程每1秒统计一次GC,总共统计10次;后面就需要对gc频率、内存等做分析

jstat -gcutil 4592 1000 10

在这里插入图片描述

分析dump文件

  1. 使用jmap命令装入dump文件
jmap -dump:live,format=b,file=d:/heap.dump 4592

在这里插入图片描述
4. 使用jvisualvm装入dump文件(笔者使用的jdk1.8的jvisualvm)
在这里插入图片描述
分析类实例数量异常的类:
右键->在实例视图中显示
在这里插入图片描述
在其中一个实例上右键->显示最近的垃圾回收跟节点,这样就可以做进一步分析有可能是什么代码创建了这些对象
在这里插入图片描述
”引用“图例
在这里插入图片描述
在GC root上右键->在线程中显示进而可以查看具体GC root处的线程信息(包括代码)
在这里插入图片描述
有了线程堆栈信息就可以做进一步代码分析了
在这里插入图片描述
进而代码分析,,,over

猜你喜欢

转载自blog.csdn.net/Aqu415/article/details/120584666
今日推荐