43、JVM实战:工具:MemoryAnalyzer

本文详细介绍Eclipse Memory Analyzer (MAT)工具,一个用于分析Java堆转储文件(dump)的强大开源工具。内容包括MAT的下载、安装、配置修改(如调整-Xmx堆内存大小),以及使用jmap命令生成dump文件的完整教程,帮助开发者解决Java应用内存泄漏和性能问题。

27.4–工具–MemoryAnalyzer–介绍、安装


1、介绍

1、 MemoryAnalyzer是一个跨平台的开源工具;
2、 可以用它来分析内存问题;
3、 可以用来监控整个Java应用程序的状态和行为;

1.1、我使用Memory Analyzer的原因

我通过jmap命令生成dump文件(4G),非常大,使用VisualVM不能很好分析dump文件,所以使用Memory Analyzer进行分析

1.1.1、生成dump文件命令

jmap -dump:format=b,file=java_pid.hprof PID

2、Memory Analyzer 下载

https://eclipse.dev/mat/previousReleases.php

根据jdk版本下载合适的mat版本,我使用的是jdk1.8,x86_64,所以下载的是图示的版本。

 

3、安装

3.1、上传文件并解压

unzip MemoryAnalyzer-1.8.0.20180604-linux.gtk.x86_64.zip

 

3.2、删除 安装包

rm -rf MemoryAnalyzer-1.8.0.20180604-linux.gtk.x86_64.zip

3.3、修改目录

mv mat memoryAnalyzer 

3.4、修改配置

MemoryAnalyzer.ini配置文件上默认的堆内存大小是1024m,需要修改成比dump文件大小大一些,我们这边设置为-Xmx6144m。

cd /home/hd/memoryAnalyzer
vim MemoryAnalyzer.ini