生产环境出现CPU占用过高,如何排查?

定位故障
  1. 先用top -c命令找出CPU占比最高的进程

    2.ps-ef或者jps-l进一步定位,得知是一个怎么样的一个后台程序给我们惹事

    jps -l ,这里-l 输出应用程序main class的完整package名或者应用程序的jar文件完整路径名,jps其他命令

3.ps -mp定位到具体线程(不是进程)或者代码

-m最示所有的线程 -ppid进程使用cpu的时间 -o该参数后是用户自定义格式4.将需要的线程ID转换为16进制格式(英文小写格式)

4.将需要的线程ID转换为16进制格式(英文小写格式)


5.jstack 进程ID|grep tid(16进制线程ID,英文小写) 打印线程的堆栈信息(温馨提示,可以加-A60 限制展示内容行数)

你可能感兴趣的:(生产环境出现CPU占用过高,如何排查?)