JAVA 内存 dump

为了查red5-0.7.0的内存泄露问题,由于dump文件太大,用JDK自带的工具JHat,加载不进来,Jhat比较垃圾,用到了两个工具:

1.IBM Memory Analyzer
1)下载地址:
https://www6.software.ibm.com/sdfdl/1v2/regs2/awadmin/heapanalyzer/Xa.2/Xb.NoLhAb4A5Mgi2gFYiaC87ef6mY6etlyzorxxZVT3hQ/Xc.heapanalyzer/ha408.zip/Xd./Xf.LPr.U1ay/Xg.5748730/Xi.AW-0IN/XY.regsrvs/XZ.k1C-BMeIg5fsUbuSOuYcpeGP_CQ/ha408.zip

2.Eclipse Memory Analysis
1)Eclipse 插件在线安装地址:http://download.eclipse.org/mat/1.0/update-site/

如果要查内存泄露,必须先dump出JVM 的heap:
/usr/java/bin/jmap -dump:file=hprof-jvm.bin -F PID
jmap -dump:file=/home/jetty/logs/hprof-jvm.bin -F PID
PID为进程号

dump到文件以后下载到本地,用工具查看,工具会给你列出最耗内存的地方,然后你可以根据内存的变化来判断这些代码存在内存泄露的可能性。

Java内存泄露的地方还是很多,具体问题得具体分析。

你可能感兴趣的:(java)