web性能測試基礎

和服務器有一次完整交互纔會對系統產生壓力,web性能測試應該分層來看:

1.客戶端

2.接口層

3.數據庫層

通常,對服務器端應用程序開展性能測試,是爲了驗證軟件系統是否能夠達到預期的性能指標,同時發現軟件系統中存在的性能瓶頸,從而實現優化系統的目的。

根據不同的測試目的,性能測試可以分爲多種類型,常見的有如下幾類:

  • 基準測試(Standard Testing)
  • 負載測試(Load Testing)
  • 壓力測試(Stress Testing)
  • 穩定性測試

1.基準測試

在單一用戶的場景下,對系統的功能進行驗證,並且觀察系統指標,將基準測試時採集得到的系統性能指標,作爲基準測試結果,爲後續併發壓力測試的性能分析提供參考依據。

2.負載測試

在用戶期望的最大負載量場景下進行測試,觀察系統性能指標是否正常,通過負載測試,目的是驗證系統是否能滿足預期的業務壓力場景。

3.壓力測試

對系統進行逐步加壓,觀察系統的性能指標,查找系統性能拐點以及瓶頸,壓力測試是爲了發現在多大併發壓力下系統的性能會變得不可接受,或者出現性能拐點(崩潰)的情況。在加壓策略上,壓力測試會對被測系統逐步加壓,在加壓的過程中考察系統性能指標的走勢情況,最終找出系統在出現性能拐點時的併發用戶數,也就是系統支持的最大併發用戶數。

4.穩定性測試

在用戶期望的負載量場景下進行長時間的測試,觀察系統的性能指標,其更關注系統在長時間運行情況下系統性能指標的變化情況,例如,系統在運行一段時間後,是否會出現事務處理失敗、響應時間增長、業務吞吐量降低、CPU/內存資源增長等問題。

性能指標主要包括業務性能指標和系統資源性能指標:

1.業務性能指標

併發用戶數、事務吞吐率、事務平均響應時間、事務成功率

2.系統資源性能指標

  • 服務器:CPU利用率、處理器隊列長度、內存利用率、內存交換頁面數、磁盤IO狀態、網卡帶寬使用情況等;
  • 數據庫:數據庫連接數、數據庫讀寫響應時長、數據庫讀寫吞吐量等;
  • 網絡:網絡吞吐量、網絡帶寬、網絡緩衝池大小;
  • 緩存(Redis):靜態資源緩存命中率、動態數據緩存命中率、緩存吞吐量等;
  • 測試設備(壓力發生器):CPU利用率、處理器隊列長度、內存利用率、內存交換頁面數、磁盤IO狀態、網卡帶寬使用情況等。

性能測試工具的基本組成:

1.壓力生成器

2.資源監控器

3.負載控制器

4.結果採集器

5.結果分析器

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