1.灰度发布概念
可能大家都听说过灰度发布这个词,模糊的知道什么意思,但具体用法不甚清楚。今天就来详解介绍下我理解的灰度发布,从什么是灰度发布?灰度发布的作用有哪些?微服务架构中怎么实现灰度发布?等等问题出发,一步步深入了解灰度发布机制。
1.1 灰度发布概念
灰度发布是指可以平滑过渡的一种发布方式。根据特定的规则,挑选一部分用户访问灰度版本的服务,并逐步扩大范围,最终把所有用户访问迁移到新的版本上来。
图片1.png
上图所示为灰度发布的基本结构图:
(1)没有灰度版本时,所有用户访问服务A正式版本;
(2)当有灰度版本时,分流引擎或负载设备根据特定的规则,挑选一部分用户访问服务A灰度版本;
在灰度发布的过程中,我们可以逐步扩大灰度版本的使用范围,最终把所有用户访问迁移到灰度版本上。
从灰度发布简单概念和结构图中我们可以得出灰度发布重要的两点:
一是,制定挑选特定用户规则;
二是,使规则生效的分流引擎/负载设备。
1.2 灰度发布作用与版本快速迭代
灰度发布的作用简单描述如下:
(1)及时获得用户的意见反馈,完善产品功能,提升产品质量;
(2)降低产品升级所影响的用户范围;
(3)降低技术上风险,在放出小范围后去发现,解决问题;
(4)让用户参与产品测试,加强与用户互动。
图片2.png
上图在有灰度发布概念下,版本迭