DevOps 與品質¶
規劃中的 CI/CD、測試與部署改進。
ECS 滾動更新
ECS 原生支援滾動更新:啟動新任務、通過健康檢查後,流量切換至新任務並排空舊任務,效果類似藍綠部署(幾乎零停機、透過還原任務定義即可快速回滾),無需維護兩套完整環境。因此不另行規劃專用藍綠部署。
自動化測試流程¶
| 類型 | 現狀 | 規劃 | 工具 | 觸發 |
|---|---|---|---|---|
| 單元測試 | 手動 | 每個 PR 自動 CI | pytest | GitHub Actions PR 開啟/推送 |
| 整合測試 | 手動 | Docker Compose CI | pytest + Docker Compose | GitHub Actions PR 合併至 main |
| 負載測試 | 臨時 | 每週排程 | k6(Grafana) | Cron 或手動觸發 |
| 安全掃描 | 手動 | 每個 PR 自動 CI | OWASP ZAP(基線掃描) | GitHub Actions PR 開啟/推送 |
| 相依性稽核 | 手動 | 自動警報 | pip-audit / npm audit |
GitHub Dependabot + Actions |
品質目標
目標是零意外部署:每個 PR 在合併前通過單元測試、整合測試和 OWASP 基線掃描。每週 k6 負載測試驗證平台能在無降級的情況下處理當前尖峰流量的 2 倍。安全掃描在常見漏洞(XSS、SQLi、配置錯誤)進入生產環境前捕捉它們。