1.首先,java程序啟動在linux,怎么生成dump文件?
1》第一步,首先你需要得到java程序的PID,最簡單的方法使用如下命令
ps -ef|grep java
或者如果是docker啟動的 springboot服務,也可以使用本命令:
2》在任意位置,執行jmap命令,生成dump文件
jmap -dump:format=b,file=serviceDump.dat 953539
jmap -dump:format=b,file=serviceDump.dat [java進程的PID]
可以看到,生成的dump文件叫:serviceDump.dat
生成文件的位置在:/backup/tomcat7/conf/serviceDump.dat
3》你可以將這個dat文件,通過xftp工具,拉取到你的本地
2.在你本機下載一個工具,叫IBM Heap Analyzer
使用IBM Heap Analyzer這個工具,打開dump文件,可以進行分析,定位到內存泄漏位置
1》下載該IBM Heap Analyzer工具,這個工具是個jar包
下載下來是
2》打開工具