【知識積累】使用JProfile分析dump文件

1、安裝JProfile(本文使用JProfiler11)

自己百度下載一個破解版

2、從服務器上將dump文件拿下來

3、使用JProfile打開(打開比較久,需耐心等待)

4、查看Classes

5、查看Reference,選擇一個class或者biggest object

6、查看

7、查看Graph

8、查看代碼

該方法主要用來導出數據報表,可以看出,當list數量太大時,就會導致OOM。

TIPS:

生成Dump文件,JVM啓動時添加參數:

#出現 OOME 時生成堆 dump: 
-XX:+HeapDumpOnOutOfMemoryError
#生成堆文件地址:
-XX:HeapDumpPath=/home/xxx/logs/

linux:

打開/tomcat_home/bin/catalina.sh文件 

JAVA_OPTS="$JAVA_OPTS $JSSE_OPTS -server -Xms6144m -Xmx6144m -XX:NewSize=384m -XX:MaxNewSize=450m -XX:PermSize=128m -XX:MaxPermSize=2048m -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/home/zyf/logs"

注:其中不設-XX:HeapDumpPath時,dump出的文件在/tomcat_home/bin目錄下

windows:

打開/tomcat_home/bin/catalina.bat文件

set JAVA_OPTS=%JAVA_OPTS% -server -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=D:\heapdump

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章