線上一些問題排查

一,線上cpu飆升很高怎麼排查?

1.通過top命令或者htop也可以看到哪些pid(進程)的cpu使用率比較高,比如pid=2266這個進程跑java服務佔用百分之70的cpu.

2.如果發現當前進程pid佔用較高,你就可以使用 top -p 2266  ,輸出當前進程,如果想看當前進程下的線程哪個佔用cpu比較高,可以使用命令 top -H -p 2266 查看. 假設 發現線程 2287佔用cpu很高

3.使用printf '%x' 2287 , 如果輸出是: 8ef

4. 使用 jstack  2266 > 2266.txt ,即輸出到一個文件上面.

5.文件裏面搜索 8ef, 例如:

 

 

6.去查找代碼,例如:

 

 ,最終發現是個死循環(whlie(true))

 

二.線上環境的JVM都設置多大?

 

 

 

 三.線上Java服務器內存飆升是怎麼回事?

 

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