内存分析——Memory Analyzer

说明:记录一次java内存分析的办法。因为本人未使用 Eclipse进行编写代码,所以无法直接使用 eclipse 直接分析。替代方式是将dump文件直接用Memory Analyzer Tools工具进行分析。以下是步骤。

1 安装 Memory Analyzer Tools

官网地址:http://www.eclipse.org/mat/downloads.php
在这里插入图片描述
这个地址下载速度比较慢,而且下载服务器老是崩溃,后面在网上找了个下载包,linux_x86-64位的,如果需要可以私聊。

解压后的目录如下:
在这里插入图片描述

2 内存 dump 文件生成

dump文件可以是内存溢出是,自动生成的,java配置参数是 :

 -XX:+HeapDumpOnOutOfMemoryError 
 -XX:HeapDumpPath=/opt/app/m.hprof

手动生成直接导出,命令如下:

jmap -dump:live,format=b,file=m.hprof ${PID}

3 分析 dump 文件

在安装路径下直接执行以下命令:

./ParseHeapDump.sh /opt/memory_analyzer/m.hprof org.eclipse.mat.api:suspects org.eclipse.mat.api:overview org.eclipse.mat.api:top_components

此命令会在 m.hprof 同级目录下生成许多文件,所以建议创建个新目录再执行此命令。结果如下:
在这里插入图片描述

4 打开分析报告

将上面的文件全部拷贝至本地,解压 .zip 文件
使用浏览器打开 index.html 文件的内容,显示如下:
在这里插入图片描述
至此可以分析具体原因。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值