四: JVM堆内存分析

4.1 内存使用情况

通过jstat可以对jvm堆的内存进行统计分析,而jmap可以获取到更加详细的内容, 如:内存使用情况的汇总、对内存溢出的定位与分析。
jmap -heap 进程id

jmap命令

堆内存配置信息

堆内存使用情况

年轻代

老年代

4.2 内存对象情况

查看所有对象: jmap -histo 进程id


查看活跃对象: jmap -histo:live 进程id

对象说明:

  • B: byte
  • C: char
  • D: double
  • F: float
  • I: int
  • J: long
  • Z: boolean
  • [: 数组,如[I表示int[]
  • [:L+类名 其他对象

4.3 将内存使用情况dump到文件中

jmap -dump:format=b,file=文件名 进程id

4.4 通过jhat对dump文件进行分析

jhat ‐port 端口号 dump文件


4.5 通过MAT对dump文件进行分析

下载地址: https://www.eclipse.org/mat/
打开文件

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容