如何使用Heap Analyzer生成和分析IBM Java Heapdump?

IBM Java 应用出现内存泄漏时,需要通过Heapdump文件进行诊断。本文介绍如何生成Heapdump,设置IBM_HEAPDUMP和IBM_HEAPDUMPDIR参数,使用kill -3信号触发生成,并详细说明如何下载并使用IBM HeapAnalyzer工具进行分析,帮助开发者定位问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 IBM Java 和 Sun Java支持的第三方工具不太一样,在AIX 服务器上只能安装IBM JAVA,那么当我们运行的Java程序出现可疑的内存泄漏,该如何诊断呢?

一、什么是heapdump

   HeapDump文件是一个二进制文件,它保存了某一时刻JVM堆中对象使用情况,这种文件需要相应的工具进行分析。

二、如何生成Heapdump:

    1. 设置参数

         export IBM_HEAPDUMP=true
         export IBM_HEAPDUMPDIR=/tmp/java

     2. 找出正在运行的java 进程。

        通过ps -ef 找出进程号,比如如下的例子找出运行HellowWorld Java程序的进程号

# ps -ef | grep -i java 
ucdaxxx  8388616        1   0   Apr 22      -  1:07 /usr/java8_64/bin/java -Dfile.encoding=UTF-8 -jar /opt/xxx/ibm-ucdagent/monitor/air-monitor.jar /opt/urbancode/ibm-ucdagent /opt/urbancode/ibm-ucdagent/bin/worker-args.conf 7000
pcoxxxe  9764918  9240722   0   Apr 22      -  1:17 /usr/java6/bin/java -Xmx512m -Xms20m -Xscmx10m -Xshareclasses -Xbootclasspath/p:/usr/java6/jre/lib/ibmjsseprovider2.jar -Dfile.encoding=UTF-8 -Xbootclasspath/
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值