首页 > 编程语言 > 详细

linu下java程序占用CPU和内存过高排错处理方案

时间:2015-04-28 11:57:29      阅读:300      评论:0      收藏:0      [点我收藏+]

1:通过jps命令查看所有进程pid。

2:使用top -p pid 针对你所要查的pid查看这个进程的CPU和内存以及负载情况

如图:

技术分享

使用top -p pid  -H  查看针对每一个线程占用CPU情况进行查询

技术分享

如果你发现某一个PID占用的CPU过高,就拿到这个PID转换成16进制

例如pid为12760转化成16进制31D8,大写换成小写

 jstack 22821|grep -A 10 0x31d8
技术分享
针对你的每个线程拿出占用CPU的堆栈信息,你可以根据这个去查找CPU的占用

如果你的内存占用较高,我比较喜欢使用jmap命令
 jmap -histo:live 9652 | head -n 100
技术分享

jmap -heap 12733

技术分享

linu下java程序占用CPU和内存过高排错处理方案

原文:http://blog.csdn.net/u012516914/article/details/45331501

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!