【产品】什么是灰度发布

时间:2024-05-21 08:01:49

灰度发布是指在黑与白之间,能够平滑过渡的一种发布方式,一级一级的发布逐渐的扩大发布范围,最后达到系统的完全上线。 

在其上可以进行A/B testing,即让一部分用户继续用产品特性 A,一部分用户开始用产品特性 B,如果用户对 B 没有什么反对意见,那么逐步扩大范围,把所有用户都迁移到 B 上面来。

灰度发布可以保证整体系统的稳定,在初始灰度的时候就可以发现、调整问题,以保证其影响度。

灰度期:灰度发布开始到结束期间的这一段时间,称为灰度期。

好处:

1)提前获得目标用户的使用反馈;

2)根据反馈结果,做到查漏补缺;

3)发现重大问题,可回滚“旧版本”;

4)补充完善产品不足;

5)快速验证产品的 idea。

【产品】什么是灰度发布
目前产品的迭代速度越来越快,尤其是互联网产品,如果按照传统的发布方式周期比较长,如果出问题修复的代价就好比较大。

灰度发布其实也就是让问题更早的暴露出来减少后期修复的成本。
  
灰度发布增加了测试范围和测试资源,但是如何制定灰度发布策略是关键:

首先,要挑选目标客户,也就是最早一批使用客户;

其次,产品针对用户的隔离,目标用户访问目标模块;

最后,监控要完善到位,性能异常点等。

灰度发布的本质实际上是让用户帮你测试,但是用户不是专职的测试,所以他一般不会主动报 bug,除非遇到大问题,但是当用户主动报 bug 的时候,也就是你收到投诉了。

但是有用户投诉不是最坏的,最坏的是用户不投诉,或者新产品为用户提供了有力的漏洞,这时候如果监控不到位,那迎接你的将是毁灭行的回滚和修复。

所以灰度发布要有安全隔离,完善的监控,并且有友好的目标客户群。

原则就是,尽早的发现问题的同时降低整体发布的风险。

以上是基本的灰度发布原则,做好灰度发布还有很多事情要做。

比如:前端的通用发布规则库,控制用户访问特点的模块;后端的实时智能定位组件,版本管理系统等等;

灰度发布可以更迅速更安全地发布产品,需要一定的技术团队积累。

示例:微信的诞生史

微信在诞生之前,在腾讯内部有三个团队在同时做微信,主要竞争者为张小龙的 e-mail 团队和手机 QQ 团队。

做这个产品之前,腾讯内部并没有给这个产品定一个完整的基调,而是让公司内部形成一个激烈的竞争,通过观察用户对产品的喜好程度和产品的实际完成情况决定上线结果。

马化腾的灰度机制是这样的:

很多公司在一开始做产品定义时,要么确定它是黑的,要么确定它是白的。

但是马化腾发现,互联网产品的定义是由用户投票决定的。在一开始,我们不定义它是黑,还是白,有一个灰度的周期。

在这个灰度周期里,让用户的口碑决定它是生是死,是白还是黑。

说的再直接点,这也是马化腾创新上的灰度机制:

容忍失败,允许适度浪费,鼓励内部竞争内部试错。马化腾说过,在产品研发过程中,我们还会有一个困惑:自己做的这个产品万一失败了怎么办?

我的经验是,在面对创新的问题上,要允许适度的浪费。

怎么理解?

就是在资源许可的前提下,即使有一两个团队同时研发一款产品也是可以接受的,只要你认为这个项目是你在战略上必须做的。

很多人都看到了微信的成功,但大家不知道,其实在腾讯内部,先后有几个团队都在同时研发基于手机的通讯软件,每个团队的设计理念和实现方式都不一样,最后微信受到了更多用户的青睐。

你能说这是资源的浪费吗?

我认为不是,没有竞争就意味着创新的死亡。即使最后有的团队在竞争中失败,但它依然是激发成功者灵感的源泉,可以把它理解为内部试错。

参考:《马化腾致信合作伙伴:灰度法则的七个维度》

需求度:用户需求是产品核心,产品对需求的体现程度,就是企业被生态所需要的程度;

速度:快速实现单点突破,角度、锐度尤其是速度,是产品在生态中存在发展的根本;

灵活度:敏捷企业、快速迭代产品的关键是主动变化,主动变化比应变能力更重要;

冗余度:容忍失败,允许适度浪费,鼓励内部竞争内部试错,不尝试失败就没有成功;

开放协作度:最大程度地扩展协作,互联网很多恶性竞争都可以转向协作型创新;

进化度:构建生物型组织,让企业组织本身在无控过程中拥有自进化、自组织能力;

创新度:创新并非刻意为之,而是充满可能性、多样性的生物型组织的必然产物。

 

 

refer:

https://blog.****.net/justdo2008/article/details/80551247