常用監控指標及調優步驟

診斷性能問題,需要清楚監控的關鍵指標,以此輔助試驗診斷,最後驗證推測。

   常用監控的關鍵指標

      通常情況下,性能測試監控指標主要分爲:資源指標和系統指標。

 資源指標:

   CPU使用率:指單位時間內進程使用cpu時間的百分比,這是對一個時間段內CPU使用狀況的統計,通過這個指標可以看出在某一個時間段內CPU被佔用的情況,如果被佔用時間很高,那麼就需要考慮CPU是否已經處於超負荷運作,長期超負荷運作對於機器本身來說是一種損害,因此必須將CPU的利用率控制在一定的比例下,以保證機器的正常運作。,長時間高負載的情況下,一般可接受上限不超過75%。

內存佔用率:一般可接受上限不超過75%。

load average(linux):是在一段時間內CPU正在處理以及等待CPU處理的進程數之和的統計信息,也就是CPU使用隊列的長度的統計信息。一般可接受上限不超過系統核心數的2倍。查看CPU core 命令:grep 'model name' /proc/cpuinfo | wc -l

磁盤I/O: 磁盤主要用於存取數據,因此當說到IO操作的時候,就會存在兩種相對應的操作,存數據的時候對應的是寫IO操作,取數據的時候對應的是是讀IO操作,一般使用% Disk Time(磁盤用於讀寫操作所佔用的時間百分比)度量磁盤讀寫性能。

網絡帶寬:一般使用計數器Bytes Total/sec來度量,Bytes Total/sec表示爲發送和接收字節的速率,包括幀字符在內。判斷網絡連接速度是否是瓶頸,可以用該計數器的值和目前網絡的帶寬比較。

 

 系統指標:

   TPS:每秒鐘系統能夠處理的交易或事務的數量。它是衡量系統處理能力的重要指標,TPS應該是一個比較平穩的曲線,而不是上下波動。

   平均響應時間:系統處理事務的響應時間的平均值。事務的響應時間是從客戶端提交訪問請求到客戶端接收到服務器響應所消耗的時間。對於系統快速響應類頁面,一般簡單業務處理不超過3秒,複雜業務處理不超過5秒。對於接口,要求的事務處理能力比較高,響應時間就更短

   事務失敗率:性能測試中,定義事務用於度量一個或者多個業務流程的性能指標,如用戶登錄、保存訂單、提交訂單操作均可定義爲事務。事務失敗率指在性能測試中失敗的事務與事務總數的百分比,對於要求很高的事務,要求失敗率爲0%,一般的事務,失敗率應控制在0.1%以內。

 

確定清晰的性能目標,並按優先級排列。

 利用科學的測試工具對應用程序進行測試,並記錄測試結果。

 把分佈式系統拆分成組件:Web層、業務層、集成層、以及網絡傳輸時間,分別進行調優。

 有系統的科學調優

     遵循一定的程序:測試性能→找出瓶頸→假設造成瓶頸的因素→測試假設是否成立→修改應用→再次測試性能。

     確定影響性能的因素:CPU、Memory還是IO。

     找出主要的瓶頸,首先解決最容易的,再重複測試。

     一次修改一個瓶頸,不要對不需要的地方進行調優。

     提高CPU性能:更快的代碼、SQL,更好的算法,減少短期生存的對象。

     提高內存性能:減少或減小長期生存的對象。

     提高IO性能:重新設計應用,減少IO的交互。

 優化完成之後,進行QA測試。

 在代碼中記錄優化的地方,並對舊代碼進行註釋。

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