可靠性與 SRE 進階

SRE 如何進行容量規劃?負載測試在其中扮演什麼角色?

AI 練習作答

容量規劃的目標

確保系統在預期和非預期的負載增長下,始終有足夠資源來維持 SLO,同時避免過度佈建造成浪費。

容量規劃流程

1. 建立需求預測

  • 分析歷史流量成長趨勢(線性、指數、季節性)
  • 預測未來 3-12 個月的流量
  • 考慮業務事件(促銷、新市場進入)

2. 確認資源模型 建立服務的資源使用模型:

  • 每 1000 QPS 需要多少 CPU/記憶體/儲存
  • 找出瓶頸資源(通常是 CPU 或資料庫連接數)

3. 負載測試 在受控環境中模擬高流量,驗證系統能否支撐預期容量,並找出失效點(Breaking Point)。

工具:k6、Apache JMeter、Locust、Gatling

4. 緩衝與安全係數 不要規劃在 100% 容量運行。通常預留 20-30% 緩衝空間(考慮到流量尖峰、效能降級、滾動部署期間的容量需求)。

負載測試類型

類型 目的
Baseline Test 確認正常負載下的效能基準
Load Test 驗證預期最高負載下的行為
Stress Test 找出系統的斷裂點(Beyond Capacity)
Soak Test 長時間穩定負載,發現記憶體洩漏等問題
Spike Test 模擬突然的流量爆增(如熱門活動)

容量規劃 vs 自動擴展

自動擴展不能取代容量規劃:

  • 自動擴展有擴展延遲(數分鐘)
  • 雲端資源配額有上限(需提前申請)
  • 成本預算需要提前規劃

✦ AI 模擬面試

輸入你的答案,AI 即時分析精準度與改進空間

登入後即可使用 AI 評分