脚本宝典收集整理的这篇文章主要介绍了java导致linux负载过高的定位方法,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
定位java进程ID
可以使用top或ps -ef |grep java ![图片描述][1]
根据进程ID找到最消耗资源的java pid
比如第一步找到的进程ID为5431 执行 top -p 5431 -H ![图片描述][2]
打印java栈信息
$ jstack -l 5431 > 5431.log
在栈信息中定位具体问题
将消耗资源的Java PID转换为16进制,在打印的栈信息中进行查找,并定位具体问题。 将18966和23262转换为16进制。 java pid 对应栈信息中的nid(16进制),根据上面转换的16进制到5431.log中进行查找。 同时也可以使用jmap查看堆的情况: jmap -heap 5431 > 5431_heap.log jmap -histo 5431 > 5431_histo.log
以上是脚本宝典为你收集整理的java导致linux负载过高的定位方法全部内容,希望文章能够帮你解决java导致linux负载过高的定位方法所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。