美文网首页
linux排查java程序cpu占用过高的问题

linux排查java程序cpu占用过高的问题

作者: 南瓜pump | 来源:发表于2022-10-23 20:36 被阅读0次
  • 查看CPU占用过高的进程:
# top指令查看当前系统的CPU占用情况
top
CPU占用
  • 查看该进程中是哪个线程占用CPU其中26637是示例的进程id:
# 查看该进程的所有线程的完整信息
ps -H -aux | grep 26637
# 查看该进程的所有线程的简略信息(如进程id,线程id,cpu占用率,进程描述等)
ps H -eo pid,tid,%cpu,comand  --sort=-%cpu | grep 26637
查看线程号
  • 根据进程号+线程号排查(也可以使用带可视化界面的jconsole或者jvisualvm工具排查)
# jstack {进程id}
jstack 26637
jstack查看线程详情
  • 将第二部中的对应的现场id转换为16进制进行检索,其中nid是进程号,例如换算出来的id是6884:


    线程详情
  • 根据上一步的进程信息找到对应的代码位置,排查问题所在。

相关文章

网友评论

      本文标题:linux排查java程序cpu占用过高的问题

      本文链接:https://www.haomeiwen.com/subject/xcxwzrtx.html