写点什么

敏捷发版:让灰度发布像 commit 一样简单

作者:Speedoooo
  • 2022 年 9 月 14 日
    广东
  • 本文字数:1287 字

    阅读完需:约 4 分钟

互联网产品的几个特点:用户规模大、版本更新频繁。新版本的每次上线,产品都要承受极大的压力,而灰度发布很好的规避了这种风险。

什么是灰度发布?

什么是灰度发布呢?要想了解这个问题就要先明白什么是灰度。灰度从字面意思理解就是存在于黑与白之间的一个平滑过渡的区域,所以说对于互联网产品来说,上线和未上线就是黑与白之分,而实现未上线功能平稳过渡的一种方式就叫做灰度发布。


在了解了什么是灰度发布的定义以后,就可以来了解一下灰度发布的具体操作方法了。例如,你的 APP 有新的业务功能需要上线,而且开发了 A 版本和 B 版本,为了验证哪个版本更贴近用户使用习惯,这个时候我们就可以选取自己比较活跃的用户,同时也分成两批,其中一批投放 A 版本,另外一批投放 B 版本去体验,在投放之前就要对各种可能存在的数据做到收集记录工作,这样才能在投放以后查看两个版本的用户数据反馈,通过大量的数据分析以及调查来确定最后使用哪一个版本来进行投放。

灰度发布的作用

也许有人会觉得灰度发布完全没有必要,是一种资源的浪费,其实灰度发布是非常有用的,通过小流量验证的方式,调整并优化产品中的问题,平滑迭代,同时还可以有效的防止重大 BUG 产生影响系统回档或者造成其他更多不必要的经济损失,同时,还能验证不同版本功能的使用情况,从而选择最优版本。

如何低成本快速使用灰度发布

给大家分享一款前端容器技术——FinClip,主要靠它去实现。FinClip 是 一个可以让任何 App 都能具备小程序运行能力的前端容器技术,只需简单集成 FinClip SDK ,即可在 iPhone、Android、Windows、Linux、macOS、统信等平台下的应用中运行你的小程序,同时,它还提供一个完善的后台管理系统,可统一管理小程序的上架和下架,以及小程序的灰度发布、并且具备数据分析能力,不管对于开发人员还是运营人员,可谓是极其便捷了。


那为什么小程序利于灰度发布?因为小程序具备“松散耦合”的特性:

  • (1)自身的迭代升级,也不会影响到宿主 App 运行的稳定性,也无需对 App 进行全回归测试。

  • (2)小程序业务功能开发可以高度并行

  • (3)容易灰度发布 – 粒度细到碎片级(例如一个小程序是可以仅在测试白名单的范围内试点)。


通过 FinClip 管理后台,任何小程序都可根据用户画像、客群分层,动态控制可见范围,而且无需编写任何复杂的应用逻辑代码。


同时,FinClip SDK 可自动上报相关数据,实现测试发布完整闭环,无需对每一个小程序都进行业务埋点开发,并且针对需要复杂业务数据回传的小程序而言,由于 FinClip SDK 有规范的数据上报协议,因此只需完成少量开发,即可实现最准确的数据上报回传。


在这个讲究快速敏捷迭代的时代,企业机构们应该需要考虑对自己的 App/应用 进行瘦身,把新旧功能剥离,以独立生命周期、独立开发测试团队的方式进行开发 – 有用的场景继续深入、无效的尝试即时废弃。总体技术架构必须让基础 App 保持稳定、让频繁增删变更业务功能成为可能,同时最大程度降低开发门槛、减少试错成本、实现敏捷迭代。


有趣的知识:灰度发布也叫金丝雀发布,起源是,矿井工人发现,金丝雀对瓦斯气体很敏感,矿工会在下井之前,先放一只金丝雀到井中,如果金丝雀不叫了,就代表瓦斯浓度高。

用户头像

Speedoooo

关注

还未添加个人签名 2021.10.08 加入

还未添加个人简介

评论

发布
暂无评论
敏捷发版:让灰度发布像commit一样简单_小程序_Speedoooo_InfoQ写作社区