全鏈路壓測常態化方案
前言
大半夜熬夜寫方案,順帶整理了在上家公司做性能基線和常態化壓測的方案,僅供參考。
前置條件
全鏈路壓測已在生產環境落地!
流程機制
準備階段
測試環境
-
確認被測鏈路變更範圍
-
每次版本發佈或線上進行變更,都需要壓測,第一步首先確認本次被測鏈路的變更範圍,主要有如下幾點:
-
被測鏈路變更範圍涉及的業務場景;
-
被測鏈路對應的接口以及本次變更涉及的字段——評估需要重新準備的壓測數據;
-
表結構同步 & 服務發佈
-
測試環境功能驗證通過後,表結構變更到壓測環境 / 預發環境 / 壓測環境;
-
如果有多套環境,建議選擇某個環境爲基準環境,一切表結構變更從基準環境自動變更到其他測試環境;
-
被測鏈路對應的服務分支發佈;
-
腳本調試 & 數據準備
-
準備相關測試數據——最好能有自動化的數據準備機制,這樣能節省很多時間;
-
複用已有壓測腳本,更新本次被測鏈路設計的接口及腳本;
-
建議梳理出線上核心業務的 P0-P2 接口,提前準備腳本,基本是個一次性的工作;
-
準備事項檢查確認
-
檢查測試數據準備情況,是否已完全準備好;
-
檢查測試腳本調試結果,是否已調試通過;
-
建議:梳理一個 checklist,形成一個長期的 SOP 機制;
-
壓測流量試跑驗證
-
在測試環境 / 壓測環境進行壓測驗證,確保相關變更和準備工作都已完成,避免遺漏;
生產環境
-
表結構同步 & 服務發佈
-
重複上述測試環境的步驟即可(形成機制,按照機制執行,分工明確);
-
腳本調試 & 數據準備
-
重複上述測試環境的步驟即可(形成機制,按照機制執行,分工明確);
-
準備事項檢查確認
-
執行 checklist,確保沒有遺漏;
-
壓測流量試跑驗證
-
小範圍小流量壓測試跑驗證,檢查正確性;
實施階段
-
設定 SLA 閾值
-
壓測任務正式開始前,設定並檢查壓測的 SLA 閾值,確保壓測流量不會導致生產服務負載過高出現異常;
-
執行壓測任務
-
按照制定好的壓測任務,啓動執行壓測(可以設置爲定時任務,避免通宵);
-
報告彙總 & 過程覆盤
-
收集壓測相關數據,輸出報告;
-
review 每次壓測任務過程中出現的問題和不足,跟進落地後續行動;
結束
-
改進措施 & 後續 Action
-
確認後續 Action 的落地情況,不斷優化過程,形成線上性能基線機制,爲容量規劃提供更好的決策;
本文由 Readfog 進行 AMP 轉碼,版權歸原作者所有。
來源:https://mp.weixin.qq.com/s/o0AawHa6D5SRvgs4Bu5FRA