本文目录#

蓝绿发布#

  • 同时维护两套环境(Blue/Green),切换流量;
  • 切换简单且回滚快速;
  • 成本较高,需要双倍资源;
  • 适合小规模服务或重构版本发布。

金丝雀发布#

  • 逐步放量(1%→5%→20%),监控指标;
  • 更细粒度控制风险;
  • 需要完善监控、流量管理能力;
  • 适合频繁发布、数据敏感服务。

对比表#

维度 蓝绿 金丝雀
资源消耗 中等
回滚速度 中等(需切回旧版本)
风险控制 粗粒度 精细放量
监控要求 一般 较高
需要支持 负载均衡切换 流量路由、指标监控

混合策略#

  • 基线蓝绿 + 金丝雀:先部署新环境,然后在新环境内放量;
  • 蓝绿用于架构变更/数据库升级,日常发布使用金丝雀;
  • 配合 Feature Flag,实现功能级别开关。

实践建议#

  • 监控:Prometheus、Datadog、AWS CloudWatch;
  • 网关:Istio、NGINX、AWS ALB;
  • 回滚:自动化脚本 + Runbook;
  • 观测窗口:设定观测期(10~30 分钟)并记录指标。

自检清单#

  • 是否根据服务规模、SLO 选择发布策略?
  • 是否设置充分的观察指标与告警?
  • 是否在演练中验证回滚流程?

参考资料#


本作品系原创,采用知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议进行许可,转载请注明出处。