性能測驗技能樹
- 開發語言
- 作業系統
- 資料庫
- 測驗工具
- 網路知識
- 業務知識
性能測驗的目的
- 發現性能瓶頸
性能測驗的分類
概念
- 性能測驗時一個非常廣泛的概念,包括很多方面的測驗,也可稱之為非功能測驗,
- 自動化測驗屬于功能測驗的范圍,由于其測驗方法要求測驗人員擁有一定的代碼能力,所以被單獨分成一個測驗模塊,
具體分類(測驗范圍)
- 負載測驗:通過逐步加壓的方法,達到既定的性能閾值的目標,閾值的設定應是小于等于某個值,如 CPU 使用率小于等于80%,
- 壓力測驗:通過逐步加壓的方法,使得系統某些資源達到飽和,甚至失效的狀態,簡單粗暴的解釋就是什么條件能把系統壓崩潰,
- 并發測驗:在同一時間內,多個虛擬用戶同時訪問同一模塊、同一功能,通常的測驗方法時設定集合點,
- 容量測驗:通常是指資料庫層面的,目標是獲取資料庫的最佳容量的能力,又稱之為容量預估,具體測驗方法時在一定的并發用戶,不同的基礎資料量下,觀察資料庫的處理能力,即獲取資料庫的各項性能指標,
- 可靠性測驗:又稱之為穩定性測驗或疲勞測驗,是指系統在高壓情況下,長時間的運行系統是否穩定,如 CPU 使用率在80%以上,7*24小時運行,系統是否穩定,
- 例外測驗:又稱之為失敗測驗,是指系統架構方面的測驗,如在負載均衡架構中,要測驗宕機、節點掛掉等情況系統的反應,
性能測驗的作業流程
需求分析 -> 性能指標制定 -> 腳本開發 -> 場景設定 -> 監控部署 -> 測驗執行 -> 性能分析 -> 性能調優 -> 測驗報告
常見系統應用分層架構
- 顯示層(view):web、android、ios、H5
- 邏輯控制層(controller):API
- 資料存盤層(model):MySQL、mongodb、redis
性能測驗指標定義
- 事務:從客戶端發起一個或多個請求(這些請求組成一個完整的操作),到客戶端接收到從服務器回傳的回應,
- TPS(Transaction Per Second):每秒鐘系統能夠處理的事務數,
- 請求回應時間:從客戶端發起的一個請求開始,到客戶端接收到從服務器回傳的回應,整個程序所耗費的時間,
- 事務回應時間:事務可能是由一個或多個請求組成的,事務回應時間主要是針對于用戶的角度而言,比如轉賬,
- 并發定義:沒有嚴格意義上的并發,并發總有先后,無論差距是1毫秒或者是1微秒,總有一個時間差,所以并發講的是一個時間范圍內,比如1秒內,
- 并發舉例:
- 多用戶在系統上進行同一操作,比如雙十一時,大家都針對同一種商品進行秒殺;
- 多用戶在系統上進行不同的操作,比如雙十一時,大家針對不同的商品進行秒殺,或者是大家有進行其他不同的操作,比如商品瀏覽,
- 并發舉例:
- 并發用戶數:同一時間內,對 系統發起請求的用戶數量,
- 吞吐量:一次性能測驗程序中給網路上傳輸的資料量的總和,
- 吞吐率:單位時間內網路上傳輸的資料量,
- 吞吐量 = 吞吐量/傳輸時間
- 點擊率:每秒鐘用戶像服務器提交的請求數,這個指標是web應用程式特有的一個指標,可以想象為每秒鐘用戶總共在頁面上進行多少次點擊動作,但是需要注意的是一次滑鼠單擊的操作后,客戶端有可能像服務器發送了多次請求,
- 資源使用率:對不同的系統資源的使用情況,如CPU、IO、記憶體,
性能測驗的需求分析
分析的目的
- 明確測驗指標
- 明確測驗場景
分析場景
- 新系統
- 同行業比較
- 業務預期
- 老系統
- 對比以往的用戶使用行為以及用戶量
性能測驗工具對比
常用工具
- LoadRunner
- JMeter
對比

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/259928.html
標籤:其他
上一篇:DNS域名決議抓包分析
