jmap -histo pid > filename
就可以把得到的内容到filename了,
打开后会发现内容格式是类似这样的:
num #instances #bytes class name
--------------------------------------
1: 427398 14458448 [I
2: 178798 6830216 [C
3: 50278 6668512 <constMethodKlass>
4: 179924 4318176 java.lang.String
5: 50278 4026648 <methodKlass>
6: 15244 3894200 [B
7: 47809 1773776 [Ljava.lang.Object;
...
...
...
Total 1645187 81806088
他的输出是按照总占用内存排序的
num是排序
#instance是对象的实例个数
#bytes是总占用的字节数
class name对应的就是Class文件里的class的标识
B代表byte
C代表char
D代表double
F代表float
I代表int
J代表long
Z代表boolean
前边有[代表数组,[I 就相当于int[]
对象用[L+类名表示
具体可以参考JVM的规范
有几个方法可以用
1、通过#instance和#bytes可以得到每个对象的占用内存平均值
分享到:
相关推荐
性能测试分享 - 基础篇 性能测试是软件测试中的一种测试方法,旨在评估软件系统的性能、可靠性和可扩展性。性能测试的目标是确保软件系统在不同负载和压力下的稳定性和高效性。 性能测试概念: 性能测试是通过...
为了有效地检测和诊断内存问题,Oracle提供了`jmap`命令行工具,它可以帮助开发者深入理解Java应用程序的内存状况。而Eclipse Memory Analyzer Tool (MAT)是一款强大的图形化内存分析工具,它能够帮助我们分析heap...
在 Kubernetes 环境中,运行 Java 程序时,无法使用 jmap 和 jstack 命令进行性能分析和诊断。这种情况下,无法获取 Java 进程的 pid,导致无法使用 jmap 和 jstack 命令。 解决方案: 1. 了解 Linux 特殊进程 在 ...
性能测试是评估软件系统在高负载或大数据量下的性能表现的过程。在进行性能测试时,可能会遇到各种问题,如CPU过高、内存溢出、线程死锁等。以下是对这些问题的详细讨论及其解决方案: 1. CPU过高: - 通过`vmstat...
性能测试监控分析手册是针对初级性能测试人员设计的一份入门指南,旨在帮助他们理解和掌握性能测试监控的关键概念和工具。本手册将详细讲解性能分析模型、各种操作系统和数据库的监控手段,以及重要的监控指标。 ...
性能测试常用命令 性能测试是软件测试的一个重要方面,涉及到对系统的整体性能进行评估和优化。下面将从硬件信息、中间件、监控Linux服务器、监控和诊断JVM、其它命令五个方面总结常用的性能测试命令。 一、硬件...
性能测试是评估软件系统在高负载或大数据量条件下的运行状况的重要手段,它涉及的关键指标和监控工具对于确保系统的稳定性、可靠性和效率至关重要。本文将深入探讨这些指标和工具。 性能测试的核心指标主要包括: ...
总的来说,`jmap`与MAT结合使用,能有效地帮助Java开发者进行内存诊断和性能优化。正确理解和运用这两个工具,是提升Java应用性能的关键步骤之一。在实际操作中,应根据具体的应用场景和问题,灵活运用各种分析方法...
### 性能测试调优知识点概述 #### 一、操作系统性能分析基础 ##### 1.1 操作系统性能分析介绍 - **操作系统角色**: 操作系统作为计算机硬件和软件之间的桥梁,负责管理计算机系统的硬件(如CPU、内存、磁盘等)和...
《自动化测试工具——深入解析JMap 1.4》 在信息技术领域,自动化测试是提升软件质量、缩短开发周期和减少人力成本的关键手段。而JMap作为一款强大的自动化测试工具,为开发者提供了一种高效、精确的方式来分析和...
5. **性能测试**:`map(网络资料).js`提供了另一种实现,作者声称其性能和容量都不如`jmap.js`。这可能是因为`jmap.js`的实现更专注于内存优化和特定操作的效率。 总的来说,基于JSON的`Map`实现是一种权衡,它...
- 性能测试结果分析,识别瓶颈所在,并进行针对性优化。 - 对比优化前后性能,验证优化效果。 #### 性能优化实践案例 - 大型系统的性能优化案例,包括实际优化过程中的问题分析和解决方案。 - 通过案例学习如何诊断...
16. **性能测试与基准测试**:使用JMeter、 Gatling等工具进行压力测试,找出性能瓶颈,设定性能基准。 17. **资源限制与调度**:理解和配置操作系统级别的资源限制,如CPU、内存和磁盘配额,以及线程和进程调度...
JVM(Java虚拟机)提供了多种监控工具来帮助开发者检测和解决这类问题。本篇将重点介绍几种常用的JVM监控工具,包括jstack、jconsole、jinfo、jmap以及jdb和jstat。 首先,`jstack`是一个用于打印Java线程堆栈跟踪...
- 使用`WatchTest`这样的测试工具来模拟实际场景,验证不同配置和调整对JVM性能的影响。 - 结合日志分析,找出性能下降的原因。 - 配合应用性能管理(APM)工具,如Dynatrace、AppDynamics等,获取更深入的洞察。...
进行压测时,应避免在本机上进行,关闭Keepalive连接,选择合适的测试时间(如凌晨),并确保相关人员在场进行监控,尤其是在集群压测时要关注系统表现和依赖集群的表现。 上述知识点涵盖了淘宝前台系统性能分析与...
- 内存泄漏:分析可能导致内存泄漏的原因,如无用对象引用、静态集合类的不当使用等,并学习如何检测和避免内存泄漏。 3. **性能优化** - 参数调整:深入理解JVM的运行参数,如-Xms、-Xmx、-XX:MaxHeapSize等,...
- **内存泄漏检测**:使用工具如jmap+MAT等检测Java程序中的内存泄漏问题。 - **JVM内存泄漏诊断**:分析JVM内存使用情况,优化内存分配策略。 - **JSP性能问题分析**:识别和优化常见的JSP性能问题,提高网页加载...