線上服務CPU100%問題快速定位實戰

2021-03-06 架構師之路

功能問題,通過日誌,單步調試相對比較好定位。

 

性能問題,例如線上伺服器CPU100%,如何找到相關服務,如何定位問題代碼,更考驗技術人的功底。

 

58到家架構部,運維部,58速運技術部聯合進行了一次線上服務CPU問題排查實戰演練,同學們反饋有收穫,特將實戰演練的試題和答案公布出來,希望對大家也有幫助。

 

題目

某伺服器上部署了若干tomcat實例,即若干垂直切分的Java站點服務,以及若干Java微服務,突然收到運維的CPU異常告警。

問:如何定位是哪個服務進程導致CPU過載,哪個線程導致CPU過載,哪段代碼導致CPU過載?

 

步驟一、找到最耗CPU的進程

工具:top

方法

執行top -c ,顯示進程運行信息列表

鍵入P (大寫p),進程按照CPU使用率排序

圖示

如上圖,最耗CPU的進程PID為10765

 

步驟二:找到最耗CPU的線程

工具:top

方法

圖示

如上圖,進程10765內,最耗CPU的線程PID為10804

 

步驟三:將線程PID轉化為16進位

工具:printf

方法:printf 「%x\n」 10804

圖示

如上圖,10804對應的16進位是0x2a34,當然,這一步可以用計算器。

 

之所以要轉化為16進位,是因為堆棧裡,線程id是用16進位表示的。

 

步驟四:查看堆棧,找到線程在幹嘛

工具:pstack/jstack/grep

方法:jstack 10765 | grep 『0x2a34』 -C5 --color

圖示

如上圖,找到了耗CPU高的線程對應的線程名稱「AsyncLogger-1」,以及看到了該線程正在執行代碼的堆棧。

 

希望對經常進行線上CPU問題排查的同學有幫助,如果有更好的實踐,也歡迎分享。

想要印象深刻,請大家務必線上實操練習喲。

如果有收穫,幫轉哈。

 

相關文章:

常見線上操作Linux命令實戰

Linux追查線上問題常用命令

一分鐘awk夠用

一分鐘sed夠用

58到家技術部

相關焦點

  • Java 問題定位方法和工具
    線上問題不同於開發期間的 bug,與運行時環境、壓力、並發情況、具體的業務相關。對於線上的問題利用線上環境可用的工具,收集必要信息對定位問題十分重要。對於導致問題的 Bug、資源瓶頸很難直觀取得數據,需要根據資源使用數據、日誌等信息推測問題根源。
  • 贏才商學院線上課程 | 單體項目的實戰運營方案
    贏才商學院線上課程,本期分享就是想尋找一位在疫情期間有著切實行動,並行之有效的運營方案,拿出具體案例與數據與大家做一次分享與交流。   2、推廣:維護公域流量和私域流量,特別是私域流量,當消費群體是年輕人的時候,應擁抱新玩法,不懂就沒辦法給品牌做指導搭平臺;   3、實現高效導流,線上線下熱點、 新媒體的組合運用。
  • 線上問題排查利器Arthas
    當然,上線前如何充分測試,線上出問題之後如何快速止血這些不在本文介紹範圍之內,本文主要介紹如何快速定位問題。線上問題複雜多樣,CPU飆升、RT突增、內存不足、性能下降等等,如何才能在最短時間內定位到問題呢?下面就來安利這款線上問題定位神器:Arthas。Arthas是一款阿里開源的Java診斷工具,對業務代碼無侵入,功能強悍,安裝簡單,上手快,深受Java開發者喜愛。
  • 線上服務 CPU 100%?一鍵定位 so easy!
    經常做後端服務開發的同學,或多或少都遇到過 CPU 負載特別高的問題。尤其是在周末或大半夜,突然群裡有人反饋線上機器負載特別高,不熟悉定位流程和思路的同學可能登上伺服器一通手忙腳亂,定位過程百轉千回。-Hp 進程PID:1073    // 找到相關負載 線程PID3. printf 「0x%x」線程PID: 0x431  // 將線程PID轉換為 16進位,為後面查找 jstack 日誌做準備4. jstack  進程PID | vim +/十六進位線程PID -        // 例如:jstack 1040|vim +/0x431 -但是對於線上問題定位來說
  • 圓形、弧形建築如何定位放線?分享一個快速準確放線的方法
    以上圖片摘自freeimages今天豆工給大家介紹一種採用全站儀和計算機AutoCAD軟體直角坐標系輔助法,從而快速準確地完成複雜基礎形式下圓形、弧形建築定位放線,並通過一個在施工程實例加以說明。該工法具有一定的推廣應用價值。
  • 一次性搞清楚線上CPU100%,頻繁FullGC排查套路
    處理過線上問題的同學基本上都會遇到系統突然運行緩慢,CPU 100%,以及 Full GC 次數過多的問題。
  • 六部門:推動物業服務線上線下融合
    中新經緯客戶端12月15日電 住房和城鄉建設部網站15日發布《關於推動物業服務企業加快發展線上線下生活服務的意見》(下稱《意見》)提到,通過數據集成、應用集成和平臺集成等技術手段,推動智慧物業管理服務平臺與各類政務服務平臺、公用事業服務平臺相關資源、信息和流程的協同和共享。
  • 唯品會定位「線上」奧特萊特
    根據中國電子商務研究中心發布的《2012年(上)中國網絡零售市場數據監測報告》顯示,截止到2012年6月,中國網購的用戶規模已達2.14億人,同比增長23.7%,網絡零售市場交易規模為5119億元,同比增長46.6%。這個快速成長的市場充滿了誘惑力,吸引了各類企業跑馬圈地、一爭高下,唯品會無疑是其中的一名佼佼者。
  • 做優線上服務——陝西省公共數字文化工程宣傳推廣工作培訓班開班
    在當前疫情防控常態化的形勢下,各地公共圖書館著力拓展線上公共文化服務陣地,以新媒體平臺的宣傳推廣服務為工作重心,在抖音、微信公眾號、微博等多媒體平臺上積極探索、不斷創新。此次培訓正是通過微視頻策劃製作、新媒體官方號運營策略、影視製作技術難點等內容的教學,著力提升公共圖書館服務推廣人員的編創能力、運營技能,助推全省公共圖書館做好公共數字文化工程宣傳推廣、做優線上公共文化服務、打造公共文化服務特色品牌。在開班儀式上,渭南市文化和旅遊局黨組書記劉忠生致歡迎詞。
  • 乾貨,書店線上營銷實戰經驗分享
    百道網關注線上營銷走在前面的書店,進行深入採訪。南京先鋒書店坦言,目前藉助最多的是自媒體平臺,如大家所熟悉的:「南京先鋒書店」官方微博、微信公眾號、先鋒書店淘寶網店、微店。江蘇大眾書局公眾號以及線上商城的引流效果較好,微信群因客服實時在線,可以及時回答解決讀者的問題,與讀者粘性較高。後續將通過抖音、公眾號、微視等線上平臺更好的打造O2O模式。
  • 野釣實戰探討,短子線和長子線之間,哪一種優勢更大
    在野釣實戰中,子線長短之爭,從來就沒有停止過,近些年,在誘釣大魚的時候,使用超長子線,也就是對摺長度超過60釐米以上的子線,屢屢斬獲大物的消息也屢見不鮮;但是,長子線在實戰中,有一個很明顯的劣勢,就是基本功不到位,很容易纏繞,而魚情稍微複雜一些,因為子線較長,訊號傳導的誤差是非常明顯的,所以,對於新手來說
  • 【實戰】詳解GAP的線上線下整合之道
    哪怕是在美國這樣的發達國家,影響一個用戶是否在某個電子商務網站下單的最主要因素之一也還是品牌信任問題。GAP由於已經通過幾十年的實體店運營讓廣大用戶了解和熟悉了自己的品牌,並且建設和維護了良好的品牌信譽,因此用戶在考慮是否從GAP旗下的電子商務網站購物的時候,會自然地將這份信任傳遞過來,從而提升初次購物轉化率;  通過優秀的服務留住用戶:  一旦用戶邁過了第一次線上購物的門檻,隨之而來的第三個重要任務是如何將這些用戶留住,這裡GAP公司則是通過優秀的服務來保證用戶的忠誠度
  • 六部門:廣泛運用5G等技術 推動物業服務企業線上線下生活服務
    現就推動物業服務企業加快發展線上線下生活服務提出如下意見。一、構建智慧物業管理服務平臺(一)明確平臺基礎功能。廣泛運用5G、網際網路、物聯網、雲計算、大數據、區塊鏈和人工智慧等技術,建設智慧物業管理服務平臺,對接城市信息模型(CIM)和城市運行管理服務平臺,連結各類電子商務平臺。
  • 打通線上線下定位數據,室內定位公司雲景智維還想為零售業提出解決...
    一般來講,室內定位技術的可應用場景有三個,一個是針對手機的應用場景,一個是物聯網,一個是機器人。目前的室內定位公司主要發力在手機應用場景上。36氪近日了解的雲景智維就是一家專注做手機應用場景的室內定位技術公司。 通常來講,常用的室內定位技術有 Wi-Fi、藍牙、地磁和傳感器。地磁和傳感器精度不高,需要配合 Wi-Fi 或者藍牙使用,沒有辦法計算絕對位置。
  • 【線上問題定位】Llvm庫ARM環境崩潰問題
    問題現象2. 問題分解思維導圖3. 工具說明4. 問題定位5. 源碼」問題現象本地編寫的demo, 在多線程組裝和運行JIT函數的過程中產生崩潰問題。工具說明無問題定位跑產品集成測試環境,問題是必現的。每一次的崩潰問題堆棧都相同。問題復現的場景是什麼?跑產品集成測試環境是1000並發,每一個並發線程組裝和運行JIT函數100次。是否可以提取成demo, 降低複雜度?
  • 薦書 | Kotlin開發快速入門與實戰
    為什麼要讀這本書如果你不知道這本書是否能幫助到自己,或者不知道是否要選擇這本書,那麼請先想一想在平時的學習或工作中是否遇到過以下這些問題:有想用Kotlin開發APP的想法,但是卻不知道該如何下手;剛學習了程式語言的if、for、while等各種語法,卻不知道利用它們到底能做些什麼;精通CPP、Java
  • 15套建築工程測量教程培訓資料,專業實戰講解,滿滿的乾貨分享
    15套建築工程測量教程培訓資料,專業實戰講解,滿滿的乾貨分享我的親身經歷,因為測量出了差錯引發了工程上的大問題,自己也在被辭退的邊緣掙扎[大哭]現在想想也是怪自己測量沒學好,工作又不認真。作為一個合格的測量員,必須熟練掌握各種測量儀器的操作,這樣才能在工作中少出錯。
  • 圍棋經緯線三維實戰坐標的應用可以快速定位棋盤上任何一點
    隨著科技的進步與發展,再加上疫情的影響,很多行業都轉型到線上了。與此同時,我們經常眼睛看著電子產品,肯定對眼睛不好,所以我突發奇想,把地理知識的經緯線運用到圍棋盤的坐標軸。相信,只要我們耐心的為孩子們講解經緯線的規則,小朋友們不用看電子產品,只需要聽聲音,聽老師說出坐標點,即可快速的在現實中的圍棋盤上找到老師說出的那個點!好的!下面我就為大家普及一下地理知識,經緯線!
  • 物業如何加快發展線上線下生活服務?官方意見來了!
    近日,住房和城鄉建設部等部門發布了關於推動物業服務企業加快發展線上線下生活服務的意見。通過基於位置的服務(LBS)、聲源定位等技術,及時定位問題設備,實現智能派單,快速響應,提高維修管理效率。通過大數據智能分析,對消防、燃氣、變壓器、電梯、水泵、窨井蓋等設施設備設置合理報警閾值,動態監測預警情況,有效識別安全隱患,及時防範化解相關風險。監測分析設施設備運行高峰期和低谷期情況,科學合理制定設備運行時間表,加強節能、節水、節電控制,有效降低能耗。
  • 線上線下融合是政務服務創新發展方向
    線上平臺提供全天候服務,服務群體覆蓋所有網民,服務資源連接所有部門;線下平臺則培養了大量業務精通的專業人才和諮詢服務隊伍,具有快速解決複雜問題的能力,這都是線上平臺落地的需要。線上線下融合的政策環境已經形成。近年來,國家層面出臺了一系列政策文件,為線上線下融合指明了方向。各地區各部門也結合國家政策文件要求,制定了2017年工作任務進度表,國家宏觀指導、地方狠抓落實的政策環境已形成。