生產(chǎn)java應(yīng)用,CPU使用率一直很高,排查思路
生產(chǎn)java應(yīng)用乓诽,CPU使用率一直很高,經(jīng)常達(dá)到100%鸠天,通過(guò)以下步驟完美解決,分享一下。
1.jps 獲取Java進(jìn)程的PID饥瓷。
2.jstack pid >> java.txt 導(dǎo)出CPU占用高進(jìn)程的線程棧。
3.top -H -p PID 查看對(duì)應(yīng)進(jìn)程的哪個(gè)線程占用CPU過(guò)高呢铆。
4.echo “obase=16; PID” | bc 將線程的PID轉(zhuǎn)換為16進(jìn)制蹲缠。
5.在第二步導(dǎo)出的Java.txt中查找轉(zhuǎn)換成為16進(jìn)制的線程PID。找到對(duì)應(yīng)的線程棧吼砂。
6.分析負(fù)載高的線程棧都是什么業(yè)務(wù)操作鼎文。優(yōu)化程序并處理問(wèn)題。