发布与部署
发布是高风险协作。
默认原则:可回滚、可观察、可停止。
1. 发布前检查
- 变更范围与审批(含数据库/配置/权限)
- 构建产物版本可追溯
- 迁移脚本:可重复?锁表风险?校验方式?
- 配置:各环境差异已核对(防漂移)
- 回滚步骤写明且演练过关键路径(至少桌面推演)
- 监控/告警:发布后看哪些盘
- 窗口与联系人:业务、研发、运维在线
2. 环境纪律
- 环境名在发布单中高亮确认(禁止默认环境误点)
- 预发与生产关键项不一致视为风险(配置即代码/清单化更佳)
- 禁止「半发布」无感知:批次可观测,失败可停
3. 推荐发布顺序
- 备份 / 快照(需要时)
- 只读或低峰窗口确认
- 迁移(如有)→ 校验
- 应用发布(可分批/灰度)
- 冒烟:主路径 + 权限 + 关键写操作
- 观察指标与日志
- 宣布完成或执行回滚
4. 灰度与特性开关
- 灰度分组配置需双人确认或清单核对
- 特性开关默认值是产品决策,发布单写明
- 多开关交叉路径要有测试或明确「未覆盖风险」
- 错误页与 5xx 不要被 CDN 长期缓存
5. 回滚
回滚不是丢脸,是专业。
- 预设回滚指挥人
- 数据已写场景:区分「回滚代码」与「数据修复」
- 支付/库存等:以对账与补偿为准,不靠猜测
6. 发布后
- 观察期(时长按风险定)
- 已知问题记录
- 文档/版本号更新
- 交接材料是 否需要同步 → 交接清单
若发布中出现故障,切换 事故响应。