伊成 2022-11-01 15:07 采纳率: 100%
浏览 20
已结题

如何排查CPU爆百的问题?

在linux 中如何排查CPU爆100%甚至200%+的问题,有啥好的工具可以使用呢?或有啥排查的步骤 ?

  • 写回答

2条回答 默认 最新

  • 伊成 2022-11-01 16:40
    关注

    一、通过jdk自带包里面的工具
    1.通过top找出cpu高的PID
    2.top -H -pPID 找到cpu占用率比较高的线程tid
    3.其次将需要的线程ID转换为16进制格式:
    printf “%x\n” tid
    如 printf “%x\n” 21276

    二、jmap使用
    1.通过top找出内存占用高的PID
    1.jmap -dump:format=b,file=/mnt/result.data PID
    导出改PID的内存情况
    2.通过eclipse的mat工具或者其他工具,导入这个result.data文件,可以可视化看具体的内存情况
    排序找内存占用比较大的对象

    三、使用perf工具

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 11月10日
  • 已采纳回答 11月2日
  • 创建了问题 11月1日