java程序高内存查看实践

发布时间:2019-11-20 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了java程序高内存查看实践脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
@H_777_0@

1、top命令:Linux命令。可以查看实时的内存使用情况。 然后使用大写M
进程按照内存使用排序如图:

图片描述

2、jmap -histo:live [pid],然后分析具体的对象数目和占用内存大小,从而定位代码。

jmap -histo:live 9823 | head -n 100 // 查询前100个内存使用过高的java类

结果如图:
图片描述
从结果上看String 类使用内存过高,可以检测一下代码中String 使用情况。这里只是我测试服的情况,小伙伴可以查看自己服务器java程序的内存使用情况。

class name 是对象类型 说明一下

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

3、jmap -dump:live,format=b,file=xxx.xxx [pid],然后利用MAT工具分析是否存在内存泄漏等等

jmap -dump:live,format=b,file=servermem.bin 9823

把这个bin文件dump下来使用MAT工具进行分析,如何使用下章讲解
说明:由于环境不一样测试的结果很可能不一样哦

[小福利:]推荐一个非常好用的商业java分析工具 jProfile

脚本宝典总结

以上是脚本宝典为你收集整理的java程序高内存查看实践全部内容,希望文章能够帮你解决java程序高内存查看实践所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。