Workflows
Canary 发布工作流
通过小流量金丝雀发布逐步验证线上行为,在全量放量前提前暴露风险并降低事故半径。
- 要把命令组合成稳定流程的团队成员
- 需要处理协作顺序和分支边界的人
- 知道 fetch / pull / push / branch 的基本作用
- 能理解一条分支为什么会分叉
- 照抄流程却没确认当前分支关系
- 在共享分支上用错整合方式
Canary 发布的核心是“先让少量真实流量验证新版本”,而不是在全量之后被动发现问题。
候选版本监控指标放量阈值
提前识别风险事故半径可控发布信心提升
canary 的价值来自“可观测 + 可中止”。
适用场景
- 新版本影响核心路径,风险不适合全量一次性释放
- 团队具备灰度路由和实时监控能力
- 需要在真实线上环境验证性能和兼容性
推荐步骤
1. 定义 canary 通过条件
至少包括:错误率、延迟、关键业务指标。
2. 部署小流量版本
例如先从 1% 或单可用区开始。
3. 观察窗口内评估指标
设定固定观察时间,避免“刚上线就马上全量”。
4. 逐级放量
1% → 5% → 20% → 50% → 100%,每一步都必须重新评估。
5. 触发阈值时立即止损
优先停止放量,必要时回滚版本或关功能开关。
如果团队没有明确“何时通过、何时回滚”的门槛,金丝雀发布无法发挥风险控制作用。
常见误区
误区 1:只看技术指标,不看业务指标
技术指标正常不代表转化路径正常。
误区 2:观察窗口过短
很多问题会在峰值流量或异步任务阶段才暴露。
误区 3:canary 和 feature flag 职责混淆
canary 控制版本流量,flag 控制功能开关,两者可配合但不等价。
- 定义 3 个核心技术指标与阈值。
- 定义 2 个关键业务指标与阈值。
- 定义每个放量阶段最短观察时长。
- 指定谁有权执行停止放量。
接下来建议继续看什么
Feature flag rollout workflowCode freeze and release candidate workflowRevert-first stabilization workflow