灰度发布-李婉婷学习笔记

灰度发布是在黑白之间的能够平滑过渡的一种发布方式。
例子:AB test,指产品已经发布了A版本。在发布B 版本的时候,同一时间让一部分用户继续使用A版本,一部分用户开始使用B 版本。如果B 版本的用户没有什么反对意见,那么逐步扩大范围,把所有的用户都迁移到B版本上面。
目的:可以保证整体系统的稳定,可以在新版本发布初期技术调整。
1.就算出问题,也只会影响部分用户,可以提前发现新版本的问题,在下一次发布前提前修复,影响可控;
2.提前走位,收集用户对于B版本的满意度,可以给后续的产品版本设计带来参考价值
3.可以做到不停机的热迁移,可以让版本回滚更便捷
应用场景:不影响当前业务的情况下升级版本
分类:金丝雀发布,滚动发布,蓝绿发布
1.金丝雀发布:成本低,优缺点很明显:只需要一个实例即可,降低了新版本的发布风险,升级全部剩余实例的时候,如果流量过大,服务器回崩,中断连接
2.滚动发布:金丝雀+多批次发布剩余实例,如果有问题,立马回滚
3.蓝绿发布:全量发布的延伸:发布前不用停机,而是另外部署新版本的全部实例,然后再把流量全部切换到新的版本