1. jstat
http://blog.csdn.net/fenglibing/article/details/6411951
https://docs.oracle.com/javase/8/docs/technotes/tools/unix/jstat.html
2. 分析栈内存(stack)
jstack/kill -3
http://jameswxx.iteye.com/blog/1041173
3. 分析堆内存(heap)
jmap + jhat。
http://www.cnblogs.com/diyunpeng/archive/2011/06/10/2077369.html
4. Dump JAVA堆
由于出现问题时,往往是不能够重启服务器时,这时需要我们以最快的速度将dump文件拿到。
最快速方法:
1、通过ps aux | grep java找到java的pid。
2、gcore pid
3、将core文件转化为dump文件
jmap -dump:format=b,file=dump.hrof /opt/jdk1.7.0_55/bin/java core.22687
传统方法:
1、运行命令jmap -dump:live,format=b,file=heap.bin pid 将内存dump下来。
2、找到可疑对象
将dump文件导入到mat工具里,并分析可疑对象,运气好的时候往这一步就可以找到项目里的异常对象。
3、详细分析
通过dominator视图过滤关心的对象。
4、通过OQL语句分析,并将可疑类的所有对象内存导出并计算。
java内存分析工具
最新推荐文章于 2024-04-25 21:53:43 发布