java虚拟机dump分析入门

1、在目标主机生成dump文件

ssh svr_message  #ssh到目标主机

ps aux|grep java   #查找目标java进程pid

sudo -u admin jmap -dump:format=b,file=/home/admin/zhujl.dump 15065    #生成目标dump文件,正常花费若干秒到若干分钟

java虚拟机dump分析入门

2、压缩dump文件

一般生产的dump文件都很大(比如此处有1.9GB),直接下载很耗时间;需要压缩后再下载到本地。

[email protected]-notify1:/home/admin$ sudo -u admin gzip zhujl.dump   
[email protected]-notify1:/home/admin$ ll -h
total 243M
-rw------- 1 admin admin 243M May 24 17:44 zhujl.dump.gz

3、下载到本地

sudo -u admin sz zhujl.dump.gz      #用sz命令

4、解压gz,将文件后缀名改为MAT可分析的.dmp

5、导入MAT

File > open file >   选择  zhujl.dmp(注意如果是非.dmp后缀文件会报告文件打开失败!)

成功打开的页面

java虚拟机dump分析入门


FAQ

1、如果MAT内存不足怎么办?

调高MemoryAnalyzer.ini 里-Xmx2560m参数

2、MAT下载运行不了怎么办

MAT要求JDK1.7以上版本才能运行