1. 程式人生 > >性能測試day01_性能基本概念

性能測試day01_性能基本概念

表達方式 講解 計數 探討 bsp 學習 包括 不能 百分比

  其實第一次接觸性能是15年的時候,懵懵懂懂的被領導拉去做第一次做性能壓測,如今有機會重新聽一下雲層大大講解性能,於是打算以此博客記錄下整個學習的過程,如若有不同意見者可以在下面留言指出,也歡迎大家一起來探討性能測試。

進入今天的主題,今天的主要目的就是構建整體的思想,那麽第一個問題來了,什麽是性能測試?簡單的來講是不是就是性價比測試(這個本質上來講是不是就是對比單位價格內的處理能力),性價比準確的來講又是軟硬件的投入對TPS的影響。

請看下圖的一個思路過程:

技術分享圖片

  什麽是性能問題?時間性價比的問題,具體到我們系統來講是不是就是訪問量的問題?

  那性能測試做什麽呢?目前來講有兩種,第一種是證明滿足需求的過程(性能需求->驗證需求->給出結論),第二種是獲取相關指標提供決策(設定方案->獲取指標->決策判斷依據),大部分人可能都是第一種。

  測試系統滿足性能需求需要經歷的階段如下:

      1.性能需求是啥?(大部分性能問題沒法做就是需求問題沒弄清楚)

      2.測試方式是啥?(第一點性能方案的設計,第二點就是工具方法)

      3.結果怎麽收集?(監控命令和監控平臺如:zabbix、普羅米修斯)

      4.報告怎麽編寫?

  所以說性能測試就是為了驗證在一定環境下系統滿足性能需求的測試,主要驗證性能指標(響應時間、吞吐量、資源利用率)。

  由於網上對這幾個性能指標眾說紛紜,而且不一定準確,這邊來重新梳理下:

  • 響應時間:分為事務響應時間(做一件事情所產生的所有時間開銷,包括前後的等待時間等)和平均響應時間(某一個時間段內的響應時間分布趨勢,這裏有有兩個點,一個是時間段的長度還有個就是時間段的位置;TPS也不一定是每秒的事務個數,取決於工具切的時間段),一般用平均響應時間作為參考依據而不是事務響應時間。
  • 吞吐量:是否以秒為單位以及單位下事務分布的情況?工具求出來的TPS不能完全以秒為單位!
  • 資源利用率:占用資源的百分比(可能存在某個節點的瓶頸但總占用率不高,例如多核CPU中的一個占用很高)和數量制(不太明確的總量,比如IO的處理能力(每秒字節數。不是百分比),以數量來表達,此時我們就需要了解每個計數器的概念和表達方式)。

總的來講,根據這些數據了解系統的工作情況,最終給出分析調優的建議和總結報告,而分析調優的建議則取決於自身的眼界,所以說性能測試是一項需要掌握知識面非常廣的測試項目。(千萬別放棄哈!)

性能測試day01_性能基本概念