天天看點

CPU占用過高的定位分析CPU占用過高的定位分析

CPU占用過高的定位分析

結合JDK和Linux指令來看

1.在linux環境中使用top指令找到使用CPU的線程

top
           

2.使用ps -ef或者jps進一步定位,得知背景程式給我們惹了什麼樣的麻煩

ps -ef|grep java|grep -v grep
jps -l
           

3.定位到具體線程和代碼

ps -mp 程序ID  -o THREAD,tid,time :哪一個線程耗費了多少時間
           

4.将需要的線程ID轉化為16進制格式(英文格式小寫)

print“%x\n” 有問題的線程ID
           
jstack  程序ID | grep tid(16進制線程ID的英文小寫)- A60