mat是一个jvm内存分析工具,可以通过生成的dump来分析jvm的内存使用情况,从而分析是否存在内存泄露的风险
- mat分析工具MemoryAnalyzer的下载地址,根据实际情况下载对应的版本
https://www.eclipse.org/mat/downloads.php
- 运行MemoryAnalyzer
- 解压下载的压缩包
- 根据实际情况修改配置文件:MemoryAnalyzer.ini
-vm C:/Program Files/Java/jdk1.8.0_101/bin/java -startup plugins/org.eclipse.equinox.launcher_1.5.0.v20180512-1130.jar --launcher.library plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.700.v20180518-1200 -vmargs -Xmx1024m
-
运行MemoryAnalyzer.exe启动软件
- 在使用jvm环境部署的服务器中生成hprof文件
- 使用命令查询进程:ps -ef | grep java
- 根据进程号使用jmap命令生成hprof文件:jmap -dump:format=b,file=./xx.hprof 进程号
- 将MemoryAnalyzer界面上点击File->open heap dump选择xx.hprof文件导入
- 打开有界面如下,然后就可以根据实际情况分析jvm内存使用情况