全鏈路壓測常態化方案

前言

大半夜熬夜寫方案,順帶整理了在上家公司做性能基線和常態化壓測的方案,僅供參考。

前置條件

全鏈路壓測已在生產環境落地!

流程機制

準備階段

測試環境

  1. 確認被測鏈路變更範圍

  2. 每次版本發佈或線上進行變更,都需要壓測,第一步首先確認本次被測鏈路的變更範圍,主要有如下幾點:

  3. 被測鏈路變更範圍涉及的業務場景;

  4. 被測鏈路對應的接口以及本次變更涉及的字段——評估需要重新準備的壓測數據;

  5. 表結構同步 & 服務發佈

  6. 測試環境功能驗證通過後,表結構變更到壓測環境 / 預發環境 / 壓測環境;

  7. 如果有多套環境,建議選擇某個環境爲基準環境,一切表結構變更從基準環境自動變更到其他測試環境;

  8. 被測鏈路對應的服務分支發佈;

  9. 腳本調試 & 數據準備

  10. 準備相關測試數據——最好能有自動化的數據準備機制,這樣能節省很多時間;

  11. 複用已有壓測腳本,更新本次被測鏈路設計的接口及腳本;

  12. 建議梳理出線上核心業務的 P0-P2 接口,提前準備腳本,基本是個一次性的工作;

  13. 準備事項檢查確認

  14. 檢查測試數據準備情況,是否已完全準備好;

  15. 檢查測試腳本調試結果,是否已調試通過;

  16. 建議:梳理一個 checklist,形成一個長期的 SOP 機制;

  17. 壓測流量試跑驗證

  18. 在測試環境 / 壓測環境進行壓測驗證,確保相關變更和準備工作都已完成,避免遺漏;

生產環境

  1. 表結構同步 & 服務發佈

  2. 重複上述測試環境的步驟即可(形成機制,按照機制執行,分工明確);

  3. 腳本調試 & 數據準備

  4. 重複上述測試環境的步驟即可(形成機制,按照機制執行,分工明確);

  5. 準備事項檢查確認

  6. 執行 checklist,確保沒有遺漏;

  7. 壓測流量試跑驗證

  8. 小範圍小流量壓測試跑驗證,檢查正確性;

實施階段

  1. 設定 SLA 閾值

  2. 壓測任務正式開始前,設定並檢查壓測的 SLA 閾值,確保壓測流量不會導致生產服務負載過高出現異常;

  3. 執行壓測任務

  4. 按照制定好的壓測任務,啓動執行壓測(可以設置爲定時任務,避免通宵);

  5. 報告彙總 & 過程覆盤

  6. 收集壓測相關數據,輸出報告;

  7. review 每次壓測任務過程中出現的問題和不足,跟進落地後續行動;

結束

  1. 改進措施 & 後續 Action

  2. 確認後續 Action 的落地情況,不斷優化過程,形成線上性能基線機制,爲容量規劃提供更好的決策;

本文由 Readfog 進行 AMP 轉碼,版權歸原作者所有。
來源https://mp.weixin.qq.com/s/o0AawHa6D5SRvgs4Bu5FRA