java内存分析工具
2017-01-23 20:30
267 查看
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语句分析,并将可疑类的所有对象内存导出并计算。
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内存泄露监控工具:JVM监控工具介绍及分析
- Java程序内存分析:使用mat工具分析内存占用
- Java 内存分析 MAT 工具
- Java常用内存分析工具的使用
- Java程序内存分析:使用mat工具分析内存占用
- Java内存分析工具
- MAT-Java内存分析工具
- 利用内存分析工具(Memory Analyzer Tool,MAT)分析java项目内存泄露
- Java内存状况查看方法和分析工具
- HPROF:Java程序的内存及CPU使用分析工具
- 深入理解java虚拟机(八):java内存分析工具-MAT和OQL
- Java程序内存分析:使用mat工具分析内存占用
- Java程序内存分析:使用mat工具分析内存占用
- Java内存分析工具——Jstat
- Java代码内存分析工具
- Java程序内存分析:使用mat工具分析内存占用
- java内存溢出分析工具:jmap使用实战
- Java内存Dump文件查看和分析工具介绍
- Java程序内存分析:使用mat工具分析内存占用
- 深入理解java虚拟机(八):java内存分析工具-MAT和OQL