排查CPU異常步驟

1、TOP命令定位異常進程

top

top命令介紹參考:https://blog.csdn.net/xtggbmdk/article/details/82818023

2、通過 top -H -p pid 查看異常的線程

top -H -p 225

3、printf "%x/n"線程號  #將異常線程轉化爲16進制


printf "%x\n" 392

 

4、使用jstack 進程號|grep 16進制異常線程號 -A90,來定位異常代碼的位置(最後的-A90是日誌行數,也可以輸出爲文本文件或使用其他數字)。可以看到異常代碼的位置

jstack 225|grep nid=0x188 -A90

 

通過結果可以看出是"C2 CompilerThread9" 這個線程佔用CPU過多,由於這個線程不是業務線程,所以沒有過多的堆棧信息,否則的話可以根據堆棧信息定位出具體的異常代碼。

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章