線上cpu負載太高 問題排查

//線上cpu負載太高 問題排查java

 

1.安裝jstack線程

yum install -y java-1.8.0-openjdk-devel-debugdebug

 

2.使用top命令 查詢進程佔用cpu最高的pid。日誌

shirft +p進程

 

3.查詢佔用cpu最高進程中的 子進程test

top -H -p pid 取出第一位的 子進程號subPidjdk

 

4. 打印出 該進程號 的 16進制。bug

printf '%x\n' subPidgrep

xxaayum

5.在jstack 進程堆棧日誌中 找到 線程(或子進程)的位置, 打印出先後30行。

jstack pid | grep xxaa -C 30

或者 jstack pid | grep -A 30 xxaa

6.定位問題和解決方案。

根據打印的堆棧日誌,能夠快速定位問題。

7.也能夠將堆棧日誌 輸出到文件

jstack pid  >> test.txt

相關文章
相關標籤/搜索