MAT分析JVM内存溢出问题,windos+linux
2021/5/18 7:28:13
本文主要是介绍MAT分析JVM内存溢出问题,windos+linux,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
一、安装
1.1、下载网站:https://www.eclipse.org/mat/downloads.php
1.2、直接安装
二、使用
2.1、导入dump的文件,选择Leak Suspects Report
2.3、分析问题
点击Problem Suspect 1的Details,查看Thread Stack,可以只管看到报错内容
三、获取内存dump文件
3.1、通过jdk自带的jmap命令获取 jmap -dump:format=b,file=D:\dump\dumpName.hprof [pid]
3.2、在jdk启动加参数中加: -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=D:\dump\ ,然后应用启动后出现内存异常则会自动导出dump文件,默认的文件名是:java_pid<进程号>.hprof。
注意:获取dump文件必须是一出现内存异常就获取dump文件,这样获取的文件信息才比较准确,如果过了一段时间在导出dump文件,就会因gc的缘故,导致信息不准确,所以推荐第二种方式获取dump文件。
四、linux下如何操作
下载
wget http://eclipse.stu.edu.tw/mat/1.9.0/rcp/MemoryAnalyzer-1.9.0.20190605-linux.gtk.x86_64.zip
1
解压
unzip MemoryAnalyzer-1.8.0.20180604-linux.gtk.x86_64.zip
1
修改MAT的内存大小
vi MemoryAnalyzer.ini
1
jmap dump整个堆
jmap -dump:format=b,file=[hprof文件] [进程ID]
1
MAT分析 dump
./ParseHeapDump.sh [hprof文件] org.eclipse.mat.api:suspects org.eclipse.mat.api:overview org.eclipse.mat.api:top_components
1
分析报告
结果会生产如下三个zip文件,很小可以直接拷贝到本机
jmap_Leak_Suspects.zip
jmap_System_Overview.zip
jmap_Top_Components.zip
这篇关于MAT分析JVM内存溢出问题,windos+linux的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-23Springboot应用的多环境打包入门
- 2024-11-23Springboot应用的生产发布入门教程
- 2024-11-23Python编程入门指南
- 2024-11-23Java创业入门:从零开始的编程之旅
- 2024-11-23Java创业入门:新手必读的Java编程与创业指南
- 2024-11-23Java对接阿里云智能语音服务入门详解
- 2024-11-23Java对接阿里云智能语音服务入门教程
- 2024-11-23JAVA对接阿里云智能语音服务入门教程
- 2024-11-23Java副业入门:初学者的简单教程
- 2024-11-23JAVA副业入门:初学者的实战指南