金丝雀发布不是把 5% 流量导向新版本后等待。它需要稳定的对照组、明确的观察窗口和自动止损规则。
选择比较指标
至少比较成功率、P95/P99 延迟、资源使用和关键业务转化。新旧版本必须在相同地域、实例规格和用户类型下比较,避免流量偏差。
设计流量阶梯
1% → 5% → 20% → 50% → 100%
每一级观察时间应覆盖缓存预热、连接建立和一个有代表性的业务周期。高风险变更从内部租户或影子流量开始。
自动止损
当新版本错误率显著高于基线、错误预算快速燃烧或关键业务指标下降时,系统应自动停止推进并回退流量。
注意状态兼容
数据库 schema、消息格式和缓存键必须支持新旧版本并存。不可逆迁移会让流量回退失去意义,应采用 expand-migrate-contract。
发布后
全量并不代表完成。继续观察一个峰值周期,确认旧版本连接清理、队列消费和后台任务正常,再删除回滚资源。