发布管理是什么
发布管理把一组变更打包为可交付版本,并规划发布时间与内容,关注的是对用户可见的新能力何时可用。它与部署动作相互独立:一次部署可以是发布,也可以只是把代码放上去、用开关先隐藏。适用对象是任何有对外或多团队可用产品的组织,关键产出是发布说明与明确的回滚点,让支持团队在发布前就知道会发生什么、出问题怎么退。
基本信息
| 定义 | 使新服务与特性可供使用 |
|---|---|
| 输入 | 构建产物、发布说明、变更集 |
| 输出 | 发布版本、发布说明、回滚点 |
| 常用节奏 | 定期列车发布或按需发布 |
| 前置条件 | 测试与安全验证通过、支持团队已准备 |
| 关联实践 | 变更使能、部署管理、事件管理 |
典型使用场景
- 定期列车发布:按固定周期打包上线的产品团队
- 按需发布:修复类或紧急需求即时上线,需按变更流程授权
- 灰度与开关控制:同一次部署按人群或比例逐步放开
- 对外通知:面向客户的功能变更需要提前公告与文档更新
- 支持准备:服务台与运维提前拿到发布说明与已知问题清单
- 回滚决策:发布异常时按预案退回到上一个可用版本
发布说明要素
发布说明要素
版本号与发布时间
变更列表(关联需求或缺陷工单)
影响范围与注意事项(接口变更、配置调整)
验证步骤 / 回滚方式 / 回滚所需时间
已知问题与临时规避方法发布与部署的区别
| 维度 | 发布 | 部署 |
|---|---|---|
| 关注点 | 对用户可见的可用性 | 把版本安装到环境 |
| 是否影响用户 | 影响,需要公告 | 不一定,可先隐藏 |
| 失败后果 | 用户可感知的功能异常 | 回滚部署即可 |
| 典型载体 | 发布说明与公告 | 流水线与制品 |
发布与部署解耦后可以做到“部署但未发布”:功能用开关隐藏,需要时再打开,从而把发布风险与部署风险分开。