利用JMAP+MAT分析Java Heap Dump

若是你的Heap Dump文件超过了几百MB,那就不要再寄但愿于jhat了,由于jhat须要数倍于dump文件的内存。这个时候你能够用MAT(Memory Analyzer),用MAT你能够在有2GB可用内存的机器上分析大约1GB左右的Dump文件。java

生成Heap Dump文件的方法:eclipse

JMAP(Java Memory Map)ide

方法一:让运行中的JVM生成Dump文件
/usr/java/jdk/bin/jmap -F -dump:format=b,file=/path/to/heap/dump/heap.bin PID插件

方法二:让JVM在遇到OOM(OutOfMemoryError)时生成Dump文件
-XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/path/to/heap/dumporm

用jhat分析Dump文件
注:只有在Dump文件比较小的时候才适合用jhat分析Dump文件
jhat(Java Heap Analysis Tool)
jhat -stack false -refs false -J-Xmx2g /path/to/heap/dump/heap.binip

用MAT分析Dump文件
MAT(Memory Analyzer)内存

http://www.eclipse.org/mat/get

安装MAT插件it

相关文章
相关标签/搜索