jmap介绍 离线分析命令jmap -dump:live,format=b,file=output.hprof pid

2023-12-14 02:58

本文主要是介绍jmap介绍 离线分析命令jmap -dump:live,format=b,file=output.hprof pid,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

jmap:查看整个堆及内存对象
基本用法:
jmap [-option] pid
重点用法:
to print same info as Solaris pmap
-heap to print java heap summary
-histo[:live] to print histogram of java object heap; if the “live”
suboption is specified, only count live objects
-finalizerinfo to print information on objects awaiting finalization

查看堆内存: jmap -heap pid

/nemo/jdk/bin/jmap -heap 239637

Attaching to process ID 239637, please wait…
Debugger attached successfully.
Server compiler detected.
JVM version is 24.65-b04

using thread-local object allocation.
Parallel GC with 4 thread(s)

Heap Configuration:(堆配置参数,一般是由启动指定)
MinHeapFreeRatio = 0
MaxHeapFreeRatio = 100
MaxHeapSize = 3221225472 (3072.0MB)
NewSize = 1310720 (1.25MB)
MaxNewSize = 17592186044415 MB
OldSize = 5439488 (5.1875MB)
NewRatio = 2
SurvivorRatio = 8
PermSize = 21757952 (20.75MB)
MaxPermSize = 268435456 (256.0MB)
G1HeapRegionSize = 0 (0.0MB)

Heap Usage:(当前堆的使用情况)
PS Young Generation
Eden Space:
capacity = 694681600 (662.5MB)
used = 601048312 (573.2043380737305MB)
free = 93633288 (89.29566192626953MB)
86.52140952056308% used
From Space:
capacity = 10485760 (10.0MB)
used = 2850816 (2.71875MB)
free = 7634944 (7.28125MB)
27.1875% used
To Space:
capacity = 9961472 (9.5MB)
used = 0 (0.0MB)
free = 9961472 (9.5MB)
0.0% used
PS Old Generation
capacity = 1431830528 (1365.5MB)
used = 120644408 (115.05547332763672MB)
free = 1311186120 (1250.4445266723633MB)
8.42588599982693% used
PS Perm Generation
capacity = 71827456 (68.5MB)
used = 71416272 (68.10786437988281MB)
free = 411184 (0.3921356201171875MB)
99.42753924070483% used

41145 interned Strings occupying 5023944 bytes.

/nemo/jdk/bin/jmap -histo 239637

对象的个数 对象占用的字节数 类名

num #instances #bytes class name

1: 172505 215674400 [B
2: 1747475 184431640 [C
3: 3434327 89150104 [Ljava.lang.Object;
4: 3138276 75804224 [Ljava.lang.String;
5: 1056366 25352784 java.lang.String
6: 37782 17923296 [I
7: 120814 16995312
8: 120814 15477472
9: 12792 14843440
10: 12471 8735960
11: 10879 7859744
12: 219728 7031296 java.lang.StackTraceElement
13: 164575 5266400 java.io.FileOutputStream
14: 212413 5097912 java.io.FileDescriptor
15: 203088 4874112 java.lang.StringBuffer
16: 298610 4777760 java.lang.Integer
17: 266729 4267664 java.lang.Object
18: 124636 3988352 java.util.HashMap E n t r y 19 : 1230073936224 j a v a . u t i l . A r r a y L i s t Entry 19: 123007 3936224 java.util.ArrayList Entry19:1230073936224java.util.ArrayListItr
20: 159025 3816600 java.lang.StringBuilder
21: 148679 3568296 java.util.ArrayList
22: 212994 3407904 java.util.concurrent.atomic.AtomicInteger
23: 25295 2665944 [Ljava.util.HashMap E n t r y ; 24 : 628122512480 j a v a . u t i l . H a s h M a p Entry; 24: 62812 2512480 java.util.HashMap Entry;24:628122512480java.util.HashMapKeyIterator
25: 73859 2363488 java.util.concurrent.locks.AbstractQueuedSynchronizer N o d e 26 : 218072321368 [ L j a v a . l a n g . S t a c k T r a c e E l e m e n t ; 27 : 716722293504 j a v a . u t i l . c o n c u r r e n t . C o n c u r r e n t H a s h M a p Node 26: 21807 2321368 [Ljava.lang.StackTraceElement; 27: 71672 2293504 java.util.concurrent.ConcurrentHashMap Node26:218072321368[Ljava.lang.StackTraceElement;27:716722293504java.util.concurrent.ConcurrentHashMapHashEntry
28: 3638 2086128
29: 38223 1834704 java.util.HashMap
30: 74605 1790520 cn.seczone.iast.thirdparty.org.apache.http.util.CharArrayBuffer
31: 26631 1706960 [S
32: 34762 1668576 java.lang.management.MemoryUsage
33: 20738 1659040 java.lang.reflect.Method
34: 12995 1552552 java.lang.Class
35: 12094 1354528 java.net.SocksSocketImpl

当前正在回收的情况

/nemo/jdk/bin/jmap -finalizerinfo 239637

Attaching to process ID 239637, please wait…
Debugger attached successfully.
Server compiler detected.
JVM version is 24.65-b04
Number of objects pending for finalization: 0

产生dump文件线下分析 -dump
**

jmap -dump:live,format=b,file=output.hprof pid

**

这篇关于jmap介绍 离线分析命令jmap -dump:live,format=b,file=output.hprof pid的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/490903

相关文章

Redis 的 SUBSCRIBE命令详解

《Redis的SUBSCRIBE命令详解》Redis的SUBSCRIBE命令用于订阅一个或多个频道,以便接收发送到这些频道的消息,本文给大家介绍Redis的SUBSCRIBE命令,感兴趣的朋友跟随... 目录基本语法工作原理示例消息格式相关命令python 示例Redis 的 SUBSCRIBE 命令用于订

防止Linux rm命令误操作的多场景防护方案与实践

《防止Linuxrm命令误操作的多场景防护方案与实践》在Linux系统中,rm命令是删除文件和目录的高效工具,但一旦误操作,如执行rm-rf/或rm-rf/*,极易导致系统数据灾难,本文针对不同场景... 目录引言理解 rm 命令及误操作风险rm 命令基础常见误操作案例防护方案使用 rm编程 别名及安全删除

Java使用jar命令配置服务器端口的完整指南

《Java使用jar命令配置服务器端口的完整指南》本文将详细介绍如何使用java-jar命令启动应用,并重点讲解如何配置服务器端口,同时提供一个实用的Web工具来简化这一过程,希望对大家有所帮助... 目录1. Java Jar文件简介1.1 什么是Jar文件1.2 创建可执行Jar文件2. 使用java

Java中HashMap的用法详细介绍

《Java中HashMap的用法详细介绍》JavaHashMap是一种高效的数据结构,用于存储键值对,它是基于哈希表实现的,提供快速的插入、删除和查找操作,:本文主要介绍Java中HashMap... 目录一.HashMap1.基本概念2.底层数据结构:3.HashCode和equals方法为什么重写Has

Springboot项目构建时各种依赖详细介绍与依赖关系说明详解

《Springboot项目构建时各种依赖详细介绍与依赖关系说明详解》SpringBoot通过spring-boot-dependencies统一依赖版本管理,spring-boot-starter-w... 目录一、spring-boot-dependencies1.简介2. 内容概览3.核心内容结构4.

Linux查询服务器 IP 地址的命令详解

《Linux查询服务器IP地址的命令详解》在服务器管理和网络运维中,快速准确地获取服务器的IP地址是一项基本但至关重要的技能,下面我们来看看Linux中查询服务器IP的相关命令使用吧... 目录一、hostname 命令:简单高效的 IP 查询工具命令详解实际应用技巧注意事项二、ip 命令:新一代网络配置全

Linux grep 命令的使用指南

《Linuxgrep命令的使用指南》本文给大家介绍Linuxgrep命令的使用指南,包括基础搜索语法、实践指南,感兴趣的朋友跟随小编一起看看吧... 目录linux grep 命令全面使用指南一、基础搜索语法1. 基本文本搜索2. 多文件搜索二、常用选项详解1. 输出控制选项2. 上下文控制选项三、正则表达

Android 缓存日志Logcat导出与分析最佳实践

《Android缓存日志Logcat导出与分析最佳实践》本文全面介绍AndroidLogcat缓存日志的导出与分析方法,涵盖按进程、缓冲区类型及日志级别过滤,自动化工具使用,常见问题解决方案和最佳实... 目录android 缓存日志(Logcat)导出与分析全攻略为什么要导出缓存日志?按需过滤导出1. 按

DNS查询的利器! linux的dig命令基本用法详解

《DNS查询的利器!linux的dig命令基本用法详解》dig命令可以查询各种类型DNS记录信息,下面我们将通过实际示例和dig命令常用参数来详细说明如何使用dig实用程序... dig(Domain Information Groper)是一款功能强大的 linux 命令行实用程序,通过查询名称服务器并输

MySQL中DATE_FORMAT时间函数的使用小结

《MySQL中DATE_FORMAT时间函数的使用小结》本文主要介绍了MySQL中DATE_FORMAT时间函数的使用小结,用于格式化日期/时间字段,可提取年月、统计月份数据、精确到天,对大家的学习或... 目录前言DATE_FORMAT时间函数总结前言mysql可以使用DATE_FORMAT获取日期字段