博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
linux下分析Java程序内存汇总
阅读量:4106 次
发布时间:2019-05-25

本文共 700 字,大约阅读时间需要 2 分钟。

使用pmap查看进程内存

运行命令

使用pmap可以查看某一个进程(非java的也可以)的内存使用使用情况,
命令格式:
pmap 进程id

示例说明

例如运行:
pmap 12358
显示结果如下图(内容较多, 分成几张图说明):
内容开始部分
内容结束部分
上图中,
第一列,内存块起始地址
第二列,占用内存大小
第三列,内存权限
第四列,内存名称,anon表示动态分配的内存,stack表示栈内存
最后一行,占用内存总大小,请注意,此处为虚拟内存大小,占用的物理内存大小可以通过top查看

使用jmap查看Java进程对象使用情况

运行命令

使用jmap可以查看某个Java进程中每个对象有多少个实例,占用多少内存,
命令格式:
jmap -histo 进程id

示例说明

例如运行:
jmap -histo  12538
显示结果如下图(内容较多, 分成几张图说明):
内容开始部分
内容结束部分
上图中:
第一列,序号,无实际意义
第二列,对象实例数量
第三列,对象实例占用总内存数,单位:字节
第四列,对象实例名称
最后一行,总实例数量与总内存占用数
另,部分示例说明(还没弄明白,后续补充):
[C,
[B,
[I,
[J,
[L,

使用jstat查看Java内存分布及回收情况

直接看这个帖子:
http://blog.csdn.net/zlzlei/article/details/46471627

补充

发现一个不错的jmap,jstat等java分析工具的博客,如下:
http://blog.csdn.net/fenglibing/article/details/6411999
你可能感兴趣的文章
Servlet的生命周期
查看>>
JAVA八大经典书籍,你看过几本?
查看>>
《读书笔记》—–书单推荐
查看>>
【设计模式】—-(2)工厂方法模式(创建型)
查看>>
有return的情况下try catch finally的执行顺序(最有说服力的总结)
查看>>
String s1 = new String("abc"); String s2 = ("abc");
查看>>
JAVA数据类型
查看>>
Xshell 4 入门
查看>>
SoapUI-入门
查看>>
Oracle -常用命令
查看>>
JAVA技术简称
查看>>
ORACLE模糊查询优化浅谈
查看>>
2016——个人年度总结
查看>>
2017——新的开始,加油!
查看>>
【Python】学习笔记——-6.2、使用第三方模块
查看>>
【Python】学习笔记——-7.0、面向对象编程
查看>>
【Python】学习笔记——-7.1、类和实例
查看>>
【Python】学习笔记——-7.2、访问限制
查看>>
【Python】学习笔记——-7.3、继承和多态
查看>>
【Python】学习笔记——-7.4、获取对象信息
查看>>