灰度发布策略
灰度发布策略
灰度发布是什么
- 灰度发布是版本升级平滑过渡的一种方式(也可以增加产品的某些特性)。
- 简而言之,当版本升级时,使部分用户使用高版本,其他用户继续使用低版本,待高版本稳定后,逐步扩大范围把所有用户流量都迁移到高版本上面来。
- AB test也是一种灰度发布方式,让一部分用户继续用A,一部分用户开始用B,如果用户对B没有什么反对意见,那么逐步扩大范围,把所有用户都迁移到B上面来。
为什么要做灰度发布?
- 灵活选择用户参与产品测试。
- 规避一定的发布风险,降低产品迭代升级所影响的范围。
- 快速获取用户的反馈意见,完善产品功能,提升产品质量。
- 避免停服发布给用户带来不便。
- 具有容灾能力:降低全量发布引起的服务器崩溃等风险,逐步发布产品,逐步控制服务器压力。
灰度发布常见一般有三种方式
- Nginx+LUA方式
- 根据Cookie实现灰度发布
- 根据来路IP实现灰度发布
灰度发布的流程
- 选定策略:包括用户规模、发布频率、功能覆盖度、回滚策略、运营策略、新旧系统部署策略等
- 筛选用户:包括用户特征、用户数量、用户常用功能、用户范围等
- 部署系统:部署新系统、部署用户行为分析系统(web analytics)、设定分流规则、运营数据分析、分流规则微调
- 发布总结:用户行为分析报告、用户问卷调查、社会化媒体意见收集、形成产品功能改进列表
参考:https://blog.csdn.net/weiwangchao_/article/details/52589615