使用JMAP dump及分析dump文件
查看整个JVM内存状态
jmap -heap [pid]
要注意的是在使用CMS GC 情况下,jmap -heap的执行有可能会导致Java 进程挂起
查看JVM堆中对象详细占用情况
jmap -histo [pid]
导出整个JVM 中内存信息
jmap -dump:format=b,file=文件名 [pid]
jhat是sun 1.6及以上版本中自带的一个用于分析JVM 堆DUMP 文件的工具,基于此工具可分析JVM HEAP 中对象的内存占用情况
jhat -J-Xmx1024M [file]
执行后等待console 中输入start HTTP server on port 7000 即可使用浏览器访问 IP:7000
eclipse Memory Analyzer
Eclipse 提供的一个用于分析JVM 堆Dump文件的插件。借助这个插件可查看对象的内存占用状况,引用关系,分析内存泄露等。
http://www.eclipse.org/mat/
kill -3 [pid]
在Linux 上找到Java所在的进程号,然后执行以上命令,线程的相关信息就输出到console
jstack
jstack 是sun JDK 自带的工具,通过该工具可以看到JVM 中线程的运行状况,包括锁等待,线程是否在运行
执行 jstack [pid] ,线程的所有堆栈信息
"http-8080-10" daemon prio=10 tid=x0a949bb60 nid=0x884 waiting for monitor entry [...]
"http-8080-10" 这个线程处于等待状态。 waiting for monitor entry 如果在连续几次输出线程堆栈信息都存在于同一个或多个线程上时,则说明系统中有锁竞争激烈,死锁,或锁饿死的想象。
“http-8080-11” daemon prio=10 tix=xxx nid=xxx in object.wait() [...]
java.lang.Thread.State:waiting (on object monitor)
该表示http-8080-11的线程处于对象的Wait 上,等待其他线程的唤醒,这也是线程池的常见用法。
“Low Memory Detector”daemon prio=10 tix=xx nid=xxx runnable [...] java.lang.Thread.State:runnable
表示“Low Memory Detector” 的线程处于Runable状态,等待获取CPU的使用权.
查看Pid 文件
/proc/18225/status or io 信息
使用JMAP dump及分析dump文件相关推荐
- jmap 文件解析_[Java基础] 使用JMAP dump及分析dump文件
http://zhumeng8337797.blog.163.com/blog/static/100768914201242410583187/ 其中jmap是java自带的工具 查看整个JVM内存状 ...
- MAT分析dump文件显示大小比jmap查询结果小
背景 有朋友向我吐槽,她在一台测试机器上调试,使用jmap查看堆内存占用时,发现年轻代+老年代占用的内存,和dump下堆转储文件使用MAT分析显示的内存不一样,百思不得其解.重现现象如下: jmap显 ...
- 使用MAT(Memory Analyzer Tool)工具分析dump文件--转
原文地址:http://gao-xianglong.iteye.com/blog/2173140?utm_source=tuicool&utm_medium=referral 前言 生产环境中 ...
- jprofiler分析dump文件_内存溢出+CPU占用过高:问题排查+解决方案+复盘(超详细分析教程)...
点击上方 "Java指南者"关注, 星标或置顶一起成长 免费送 1024GB 精品学习资源 来源:https://zhanghan.blog.csdn.net/article/de ...
- linux使用MAT分析dump文件
unzip MemoryAnalyzer-1.8.0.20180604-linux.gtk.x86_64.zip 修改MAT的内存大小, 注意这个大小要根据你dump文件大小来的,如果dump文件是5 ...
- jvm mat分析dump文件
jvm调优中,经常使用dump来分析是否存在大对象导致频繁full gc,以下为使用步骤: 一.获得服务进程 二.生成dump文件 jmap -dump:format=b,file=xxx.dump ...
- linux分析mat使用教程,使用MAT(Memory Analyzer Tool)工具分析dump文件
<使用MAT(Memory Analyzer Tool)工具分析dump文件> 前言 生产环境中,尤其是吃大内存的JVM,一旦出现内存泄露等问题是非常容易引发OutofMemory的,如果 ...
- c++ dump某个变量_linux内核调试之 crash分析dump文件
Linux 下也有众多的内存转储分析工具,lcrash.Alicia.Crash.Crash 是由 Dave Anderson 开发和维护的一个内存转储分析工具,目前它的最新版本是 5.0.0. 在没 ...
- linux 命令调试分析core文件,linux环境下dump vmcore文件分析
1.安装kernel-debuginfo-common 和 kernel-debuginfo [root@wds ~]# uname -r 3.10.0-693.el7.x86_64 rpm -ivh ...
最新文章
- leveldb源码分析:数据查询
- checkbox的相关知识点
- 【好文共分享】关于ora-04065和ora-04068的原理解释
- 《数据结构与算法 C语言版》—— 2.7习题
- PaddleOCR——运行错误【Please compile with gpu to EnableGpu()】解决方案
- SAP Spartacus 自定义Popover指令,如何实现弹出对话框自动关闭功能
- 微信小程序,引用扩展组件提示“没有找到可以构建的NPM包”
- 在Windows 7或Vista(或Windows 8.x,Sorta)上禁用Aero
- ORACLE数据库管理工具EM
- 北京环球影城上线王者荣耀英雄主题活动
- solr dih mysql 注意事项
- vue ---- webpack -插件 html-webpack-plugin
- Docker详解(二)——Docker技术原理与架构
- 【渝粤题库】陕西师范大学210009幼儿园健康教育作业(高起专)
- MySQL binlog_format (Mixed,Statement,Row)
- fastreport(B)
- Java实用教程(第5版)参考答案
- 除了孙宇晨 币圈还有这些人入不得、出不去
- cmake gcc target specific option mismatch
- 五大学科竞赛(三)-o2 -lm编译选项
热门文章
- route-policy和ACL组合时permit和deny的作用
- 洛谷3672:小清新签到题——题解
- .NET解决[Serializable] Attribute引发的Json序列化k_BackingField
- python的urllib2包基本使用方法
- .net Asp AdRotator(广告控件)
- Pure-Ftp:基于虚拟账号的FTP服务器
- Ubuntu 8.04 Linux + Apache2 + MySQL5 + PHP + Tomcat5.5 整合安装
- Apache Cassandra 开源数据库软件修复高危RCE漏洞
- 盖瑞特金属探测门受多个严重漏洞影响,可遭篡改
- FireEye动态:SolarWinds Orion 新 0day用于安装SUPERNOVA