CPU飙高问题排查,从linux到java代码

第一步:top监测进程资源占用情况,获取异常进程编号。这一步可以获得异常占用进程号。

第二步:ps H -eo pid,tid,%cpu | grep xxxx   H打印线程以及进程信息,-eo打印指定的字段:线程id 进程id cpu占用率  grep管道命令,以前面命令的结果作为输出项,按grep后的条件过滤。 xxxx表示第一步中查到的异常进程号。这一步可以获得异常占用线程号。

第三步:jstack 异常进程号。 这一步可获得异常线程详细列表,其中包含用16进制打印的线程号。

第四步:将第二步异常占用线程号转化为16进制,再对比第三步的线程列表就可以看到代码异常的位置,这个异常有打印出来。

posted @ 2022-10-17 18:33  好兵帥克  阅读(54)  评论(0编辑  收藏  举报