閱讀453 返回首頁    go windows


大規模分布式壓測__最佳實踐_性能測試-阿裏雲

訪問性能測試控製台

     大規模分布式壓測

1 背景

  需要臨時擴容他們的機器來支持100W的QPS,每秒100W的請求,聽起來還是挺恐怖的。什麼概念呢,2013 年雙12的大秒係統的峰值QPS也就在42萬多。從這樣的數據來看,這個客戶的需求高的離譜。但是既然用戶有這個需求,我們還是需要滿足客戶的期望。

2 問題及挑戰

  遇到問題主要有:

  • 100萬QPS
  • 被測係統如何搭建,需要多少台機器
  • 選擇何種壓測工具,百萬級QPS考驗,壓力機需要多少台機器

  遇到的挑戰主要有:

  • 項目實施的時間隻有5天,壓力非常大
  • 被測係統是否能承受如此大的壓力
  • 壓力機自身是否能經受如此大的壓力,是否穩定
  • 短時間內如何快速部署被測係統及壓力機環境
  • 性能瓶頸在哪(程序、OS/硬件、網絡設備等)

3 解決方案及評估

  經過多次會議,確定解決方案是,采用阿裏雲環境自動化運維及彈性擴容來搭建環境,壓測工具采用分布式壓測。
  通過評估機器數量如下:

  • 被測係統環境:2台SLB,300台ECS(4核CPU 8G內存),批量部署應用
  • 壓力機環境:300台ECS(4核CPU 8G內存),批量部署性能測試

  整個團隊包括客戶、SLB和ECS機器維護人員、環境部署人員以及性能測試團隊充分密切配合。

4 目標

  QPS:100萬,穩定運行1分鍾左右。

5 典型業務

  秒殺活動,一個比較複雜的帶Header, Body, Cookie 的http 請求。

6 測試結果

6.1 結果

  • QPS峰值最高達到71.5W,後端ECS CPU利用率最高75%,網絡峰值流量達到25Gb。
  • QPS達到峰值後,逐漸下降,基本穩定在50萬左右。能穩定運行4分鍾左右。

6.2 分析

  QPS下降的原因經過各技術專家診斷一致認為是SLB丟包導致,SLB壓力已到極限,因此建議需要配置3台SLB,每台SLB掛100台ECS,才有可能滿足100萬QPS 。

6.3 結論

  經過與客戶會討,峰值71.5萬QPS,穩定運行4分鍾50萬QPS,能滿足目前現在的業務需求。 如果需要支持100萬QPS,需要擴容SLB,至少是3台SLB以上。

7 總結

7.1 分布式壓測

7.1.1 穩定性

  在測試過程中,性能測試經受住了大規模壓力的考驗,並且從未出現過異常問題,由此可知,性能測試產品非常穩定。

7.1.2 百萬級QPS支持

  在測試的過程中,性能測試能支撐百萬級QPS的壓力發起,這是目前其他壓測工具所不能支持的。

7.1.3 資源消耗少

  雖然性能測試壓測機申請了300台ECS機器,但在測試過程中,消耗的機器資源非常少,CPU利用率不到0.1%,並且每台機器負載均衡,實際上100台ECS就足夠了。

7.2 環境搭建

  在調研階段,性能測試團隊就大規模壓力發起進行了充分的調研,並且通過測試驗證單台機器能發起的壓力以及彈性擴容,預估出需要的機器數量,才能保證項目的順利進行。

  另外阿裏雲批量自動化環境搭建節省了環境的部署時間,在1天內完成所有工作。

7.3 團隊合作

  這次大規模壓力壓測在5天內順利完成,離不開整個團隊所有人員密切配合,重點關注,才能讓如此大的項目在短時間內成功實施。因此團隊合作在項目實施的過程中有起著舉足輕重的作用。

訪問性能測試控製台

最後更新:2016-05-06 10:44:37

  上一篇:go 某政務網站性能優化__最佳實踐_性能測試-阿裏雲
  下一篇:go 某移動APP性能優化__最佳實踐_性能測試-阿裏雲