监控报警linux服务器下CPU的使用率过高导致调用失败的问题排查方式

1、使用top命令定位异常进程。可以看见11268的CPU和内存占用率都非常高

     此时可以再执行ps -ef | grep java,查看所有的java进程,在结果中找到进程号为11268的进程,即可查看是哪个应用占用的该进程。

     top

     ps -ef|grep java

2、使用top -H -p 进程号查看异常线程,

     top -H -p 11268

3、使用printf "%x " 线程号将异常线程号转化为16进制

      printf "%x " 11422     

      2c9e

4、使用jstack 进程号|grep 16进制异常线程号 -A90来定位异常代码的位置(-A90是指输出的日志行数)。可以看到异常代码的位置。

      jstack 11268|grep 2c9e -A90

5、应用调用失败的话,紧急处理的话,可以杀掉该进程,然后重启

     kill -9 11268

原文地址:https://www.cnblogs.com/wueryuan/p/13032325.html