当前位置: 代码网 > it编程>编程语言>Java > JVM-通过MAT工具对dump文件进行分析

JVM-通过MAT工具对dump文件进行分析

2024年08月03日 Java 我要评论
MAT(Memory Analyzer Tool),一个基于Eclipse的内存分析工具,是一个快速、功能丰富的JAVA heap分析工具,它可以帮助我们查找内存泄漏和减少内存消耗。使用内存分析工具从众多的对象中进行分析,快速的计算出在内存中对象的占用大小,看看是谁阻止 了垃圾收集器的回收工作,并可以通过报表直观的查看到可能造成这种结果的对象。

mat工具介绍

mat(memory analyzer tool),一个基于eclipse的内存分析工具,是一个快速、功能丰富的java heap分析工具,它可以帮助我们查找内存泄漏和减少内存消耗。使用内存分析工具从众多的对象中进行分析,快速的计算出在内存中对象的占用大小,看看是谁阻止 了垃圾收集器的回收工作,并可以通过报表直观的查看到可能造成这种结果的对象。
官网地址:https://www.eclipse.org/mat/
image.png

下载安装

下载地址:https://www.eclipse.org/mat/downloads.php
在这里插入图片描述
将下载得到的memoryanalyzer-1.8.0.20180604-win32.win32.x86_64.zip进行解压:
在这里插入图片描述

使用

在这里插入图片描述
image.png

overview

dump文件信息, 使用饼状图的方式来展示内存占用的信息

details是文件信息详情, 包含了文件大小、字节码文件大小、对象文件大小、类加载器数量
actions是常用的操作汇总, 与左上角的菜单功能相同
在这里插入图片描述

histogram

histogram汇总了使用到的类的对象数量以及堆占用空间
image.png

dominator_tree

dominator_tree汇总了堆内存空间中占比最大的对象, 按照空间大小排序, 我们可以通点击左边的箭头符号查看当前对象的引用状况, 最右侧为当前对象所占空间比例
查看对象以及它的依赖:
在这里插入图片描述

oql

oql是object query language的简写,即对象查询语言, 语法与sql类似, 点击下方的红色感叹号开始执行。
在这里插入图片描述

thread_overview

线程视图, 汇总了dump文件中所有线程的信息, 按照线程所占用的空间进行排序

leak suspects

内存泄漏疑点, 这是mat根据dump文件的分析结果得到最有可能导致oom的疑点, 也是我在使用mat工具时第一个打开的工具,查看可能存在内存泄露的分析:
在这里插入图片描述

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com