jmap 导出 tomcat 内存快照分析

登录系统(注意这里启动 tomcat 的用户)

# 获取 tomcat 的 pid 号
ps -ef|grep tomcat

# 例如这里 pid 号为 13133
jmap -dump:live,format=b,file=dump.hprof 13133

使用 MAT 分析

# MAT 下载地址:https://www.eclipse.org/mat/downloads.php

# 我这里下载的 windows 版本,解压后,按需更改 MemoryAnalyzer.ini 里面的配置,我改成了 4G 大小


下载 dump.hprof ,使用 MAT 打开分析


原文地址:https://www.cnblogs.com/klvchen/p/12055597.html

时间: 2024-10-13 09:11:50

jmap 导出 tomcat 内存快照分析的相关文章

转:Tomcat内存溢出的三种情况及解决办法分析

Tomcat内存溢出的原因 在生产环境中tomcat内存设置不好很容易出现内存溢出.造成内存溢出是不一样的,当然处理方式也不一样. 这里根据平时遇到的情况和相关资料进行一个总结.常见的一般会有下面三种情况: 1.OutOfMemoryError: Java heap space 2.OutOfMemoryError: PermGen space 3.OutOfMemoryError: unable to create new native thread. Tomcat内存溢出解决方案 对于前两种

Tomcat内存溢出的三种情况及解决办法分析

转自 http://cache.baiducontent.com/c?m=9f65cb4a8c8507ed4fece7631046893b4c4380147d8c8c4668d4e419ce3b4c413037bfa6663f405a8e906b6075aa1f0ce9f03176370123b5989b8908dcac925f75ce786a6459db0144dc4ee59a1167877bcd06feaf68bce6e732e2e88893880705dd53742bddaccd095b4

tomcat内存溢出原因分析与解决

网上有很多的介绍但都不全面,本文综合了几篇文章共同组从. 在生产环境中tomcat内存设置不好很容易出现内存溢出.造成内存原因是不一样的,当然处理方式也不一样. 这里根据平时遇到的情况和相关资料进行一个总结.常见的一般会有下面三种情况: 1.OutOfMemoryError: Java heap space 2.OutOfMemoryError: PermGen space 3.OutOfMemoryError: unable to create new native thread. 对于前两种

tomcat内存占用过高排查小结

假设tomcat进程PID为16818 确认是不是内存本身分配过小:jmap -heap 16818 找到最耗内存的对象:jmap -histo 16818 (带上:live则表示先进行一次FGC再统计,如jmap -histo:live 16818) 导出内存转储快照:jmap -dump:live,format=b,file=heap.bin 16818 (使用Eclipse mat分析) 统计进程打开的句柄数:ls /proc/16818/fd |wc -l 统计进程打开的线程数:ls /

openstack 快照分析

1.  snapshot overview 对openstack而言,虚拟机的快照即是镜像,快照做完后以镜像形式存于glance.虽然openstack的快照是基于libvirt(qemu-kvm),但是二者在实现上有很大区别: libvirt 主流快照实现: 采用virDomainSnapshotCreateXML()函数(CLI为virsh snapshot-create). 新建的快照与虚拟机有关联:若为内置快照,快照信息和虚拟机存在同一个qcow2镜像中:若为外置快照,新建一个qcow2

JVM 内存问题分析方法记录

1.GC日志分析 除了CMS的日志和其他GC的日志差别较大外,它们都可以抽象成如下格式 [GC [<collector>:<starting occupancy1>-><ending occupancy1>(total size1), <pause time1> secs] <starting occupancy2>-><ending occupancy2>(total size2), <pause time2>

java内存溢出分析工具

http://www.cnblogs.com/preftest/archive/2011/12/08/2281322.html java内存溢出分析工具:jmap使用实战 在一次解决系统tomcat老是内存撑到头,然后崩溃的问题时,使用到了jmap. 1 使用命令 在环境是linux+jdk1.5以上,这个工具是自带的,路径在JDK_HOME/bin/下 jmap -histo pid>a.log 2 输出结果摘要 Size Count Class description -----------

转:Tomcat 内存溢出 &quot;OutOfMemoryError&quot; 问题总结 (JVM参数说明)

问题说明:公司内网环境中部署的jenkins代码发版平台突然不能访问了,查看tomcat的catalina.out日志发现报错如下: ? 1 2 3 4 5 6 [[email protected] logs]# tail -f /srv/apache-tomcat-7.0.67/logs/catalina.out ...... Exception in thread "http-bio-8080-exec-5" java.lang.OutOfMemoryError: PermGen

常见的内存问题分析思路

一 系统内存不足 Java 应用一般都有单机或者集群的内存水位监控,如果单机的内存利用率大于 95%,或者集群的内存利用率大于80%,就说明可能存在潜在的内存问题(注:这里的内存水位是系统内存). 除了一些较极端的情况,一般系统内存不足,大概率是由 Java 应用引起的.使用 top 命令时,我们可以看到 Java 应用进程的实际内存占用,其中 RES 表示进程的常驻内存使用,VIRT 表示进程的虚拟内存占用,内存大小的关系为:VIRT > RES > Java 应用实际使用的堆大小.除了堆内