【JVM】CPU飙升问题

前言

 线上程序突然CPU飙升,,,在一个并发不大的网站,这种情况基本上99.99%都是程序有死循环。接下来看看怎么具体定位排查吧。

硬啃

看看最近的代码,搜索关键字while,根据我多年临床经验,100%是哪位菜鸟写了bug。

如果找不到原因,继续往下看。

线程dump

1、找出java的进程id

jps -l 


2、通过进程id找到进程中各个线程的情况,包含CPU使用占比

top -p pid


3、输出H,按照CPU使用占比排序,并找到CPU占比高的线程threadId

 H


4、通过线程id打印出线程dump

jstack -l threadId > /tmp/threadId.txt


5、然后就可以找到可以代码处了

猜你喜欢

转载自www.cnblogs.com/kbian/p/12807193.html