中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

調查線上接口超時報警的方法步驟

發布時間:2021-10-13 13:32:58 來源:億速云 閱讀:149 作者:iii 欄目:編程語言

這篇文章主要介紹“調查線上接口超時報警的方法步驟”,在日常操作中,相信很多人在調查線上接口超時報警的方法步驟問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”調查線上接口超時報警的方法步驟”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

常用的命令包括 dashboard 、 thread -n、watch、trace 、 tt 等命令。

trace: 可以實時輸出各個子調用的執行時間, 輸入參數,返回值,是否該調用有異常,可以通過 trace -h 查看具體參數含義 tt: 將某一次耗時調用提取,然后重放,可以通過 tt -h 查看具體參數含義

第一步:trace定位耗時代碼:

trace命令輸出耗時超過 900 毫秒 的調用

trace com.kuaikan.comicbuy.repository.impl.ComicBuyRepositoryImpl getAllComicOrderFromDB  '#cost>900'  //查看耗時的調用路徑
 
watch  com.kuaikan.comicbuy.dao.comicbuy.ComicOrderMapper getHadPurchasedComicNumByTopicId {params,returnObj}  -x 2   '#cost>10' //獲取具體耗時的入參

輸出結果:

arthas@25316]$ trace com.kuaikan.comicbuy.repository.impl.ComicBuyRepositoryImpl getAllComicOrderFromDB  '#cost>900'
Press Q or Ctrl+C to abort.
Affect(class-cnt:2 , method-cnt:1) cost in 786 ms.
`---ts=2020-03-27 14:08:28;thread_name=DubboServerHandler-10.66.2.100:20893-thread-380;id=344;is_daemon=true;priority=5;TCCL=org.springframework.boot.loader.LaunchedURLClassLoader@533377b
    `---[954.270866ms] com.kuaikan.comicbuy.repository.impl.ComicBuyRepositoryImpl:getAllComicOrderFromDB()
        +---[0.010746ms] com.kuaikan.comicbuy.bean.ComicOrder:getTableNameByUserId() #376
        // 代碼里面是在循環中執行的ComicOrderMapper:getComicOrderByUserId,
        // count=18表示循環的次數,total是總的執行時間,min是循環中最小的執行時間,max是最大執行時間。
        +---[min=3.061773ms,max=272.769328ms,total=854.625477ms,count=18] com.kuaikan.comicbuy.dao.comicbuy.ComicOrderMapper:getComicOrderByUserId() #382
 
        +---[min=0.001283ms,max=0.006587ms,total=0.036144ms,count=17] com.google.common.collect.Iterables:getLast() #383
        +---[min=0.001431ms,max=0.003022ms,total=0.032525ms,count=17] com.kuaikan.comicbuy.bean.ComicOrder:getId() #383
        +---[0.001445ms] com.google.common.collect.Lists:partition() #395
        +---[2.349703ms] com.kuaikan.comicbuy.dao.comicbuy.ComicOrderMapper:getComicOrderBatchIdsList() #396
        +---[min=2.27E-4ms,max=0.479048ms,total=7.025685ms,count=6736] com.kuaikan.comicbuy.bean.ComicOrder:getProductType() #402
        `---[min=8.2E-5ms,max=0.150606ms,total=5.636961ms,count=6736] com.kuaikan.comicbuy.bean.ComicOrder:getProductType() #403

第二步 : tt命令重放耗時調用

這一步的目的是為了判斷,耗時調用是否和特定輸入參數有關系 tt命令輸出耗時超過 500毫秒 的調用

tt   -t com.kuaikan.comicbuy.repository.impl.ComicBuyRepositoryImpl getAllComicOrderFromDB  '#cost>500'

輸出結果:

INDEX   TIMESTAMP          COST(ms)  IS-RET  IS-EXP  OBJECT        CLASS                         METHOD
------------------------------------------------------------------------------------------------------------------------------
 1014    2020-03-27 14:40:  576.2674  true    false   0x79476a4e    ComicBuyRepositoryImpl        getAllComicOrderFromDB
         37                 15
 1015    2020-03-27 14:40:  852.3366  true    false   0x79476a4e    ComicBuyRepositoryImpl        getAllComicOrderFromDB
         45                 85
 1016    2020-03-27 14:41:  894.5568  true    false   0x79476a4e    ComicBuyRepositoryImpl        getAllComicOrderFromDB
         08                 44
 1017    2020-03-27 14:41:  612.3478  true    false   0x79476a4e    ComicBuyRepositoryImpl        getAllComicOrderFromDB
         30                 68
 1018    2020-03-27 14:42:  1162.434  true    false   0x79476a4e    ComicBuyRepositoryImpl        getAllComicOrderFromDB
         00                 85
 1019    2020-03-27 14:42:  1194.843  true    false   0x79476a4e    ComicBuyRepositoryImpl        getAllComicOrderFromDB
         00                 248

第三步: 重復超時的請求

INDEX = 1018 的調用執行了1162.434毫秒,這個肯定是已經報RPC超時了.

查看某一個的詳細 tt -i 1018

重放這個請求: tt -i 1018 -p

到此,關于“調查線上接口超時報警的方法步驟”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

青河县| 玛曲县| 漾濞| 沽源县| 三门县| 樟树市| 红安县| 宣城市| 尚义县| 咸阳市| 昌邑市| 韶关市| 克什克腾旗| 太保市| 淅川县| 礼泉县| 正镶白旗| 惠水县| 天台县| 梁河县| 乐亭县| 新邵县| 若尔盖县| 凤翔县| 紫云| 蓝田县| 遵义县| 长武县| 加查县| 安塞县| 眉山市| 凤冈县| 溧阳市| 舒兰市| 莎车县| 共和县| 北流市| 大连市| 南部县| 鸡西市| 南川市|