日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網(wǎng)為廣大站長提供免費收錄網(wǎng)站服務,提交前請做好本站友鏈:【 網(wǎng)站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網(wǎng)站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

上上周生產(chǎn)出現(xiàn)問題,記錄一下定位問題的方案,原創(chuàng)不易,歡迎關注

測試代碼:

@RestController
@RequestMApping("/test")
public class TestController {
   private static Logger log = LoggerFactory.getLogger(TestController.class);
   @GetMapping("/test")
   public boolean test(){
       Thread t1 = new Thread(new ThreadOne());
       t1.setName("one");
       Thread t2 = new Thread(new ThreadTwo());
       t2.setName("two");

       t1.start();
       t2.start();
       return true;
  }

   public  class ThreadOne implements Runnable {
       public void run() {
           int a = 0;
           while (true) {
               a++;
               try {
                   log.info("[ThreadOne]當前a等于:{}",a);
                   Thread.sleep(10);
              } catch (InterruptedException e) {
                   e.printStackTrace();
              }
          }
      }
  }

   public  class ThreadTwo implements Runnable {
       public void run() {
           long a = 0L;
           while (true) {
               a++;
               log.info("[ThreadTwo]當前a等于:{}",a);
          }
      }
  }
}

觸發(fā):

線程CPU占用100%的問題怎么定位

 

第一種方式:

1、top找到占用CPU最多的進程

線程CPU占用100%的問題怎么定位

 

2、top -Hp pid 找出8139進程中耗用CPU最多的線程,按H,獲取每個線程的內(nèi)存情況

top -Hp 8139
線程CPU占用100%的問題怎么定位

 

3、printf "%xn" pid 將線程id轉成十六進制

線程CPU占用100%的問題怎么定位

 

4、執(zhí)行jstack命令,得到線程堆棧信息中12509這個線程所在行的后面20行

jstack 8139 |grep 30dd -A 20 >test.txt
線程CPU占用100%的問題怎么定位

 

5、將test.txt文件下載到本地,打開就能看到具體的堆棧信息,最后找出可能存在問題的代碼

線程CPU占用100%的問題怎么定位

 

這個幾個命令確實找到問題,但是整體敲下來需要一點時間,生產(chǎn)環(huán)境出現(xiàn)問題,需要爭分奪秒,不然損失很大,也可能造成數(shù)據(jù)積壓。下面推薦一個阿里大神寫的一段腳本,只需要三步就可以搞定

第二種:使用show-busy-JAVA-threads快速排查Java的CPU性能問題

下載

wget --no-check-certificate https://raw.github.com/oldratlee/useful-scripts/release/show-busy-java-threads
線程CPU占用100%的問題怎么定位

 

添加執(zhí)行權限

chmod +x show-busy-java-threads

啟動

./show-busy-java-threads或者 sh show-busy-java-threads
線程CPU占用100%的問題怎么定位

 

顯然,結果跟第一種一樣。你學會了嗎,哈哈

分享到:
標簽:線程 CPU
用戶無頭像

網(wǎng)友整理

注冊時間:

網(wǎng)站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網(wǎng)站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網(wǎng)站吧!
最新入駐小程序

數(shù)獨大挑戰(zhàn)2018-06-03

數(shù)獨一種數(shù)學游戲,玩家需要根據(jù)9

答題星2018-06-03

您可以通過答題星輕松地創(chuàng)建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數(shù)有氧達人2018-06-03

記錄運動步數(shù),積累氧氣值。還可偷

每日養(yǎng)生app2018-06-03

每日養(yǎng)生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定