一、灰度发布



1. 简介



灰度发布,是指在黑与白之间,能够平滑过渡的一种发布方式。



通过不同策略对用户进行分流,不同的用户组使用不同的应用版本。



 



2. 优点



互联网服务变动频繁,发布周期短。速度与质量总是难以双全。灰度发布有以下优点:



 



降低发布风险,减少影响范围



可以灰度测试帐号,降低测试依赖,减少线下自测的数据构造成本



方便回滚



3. 缺点



开发、测试和部署的成本较高



数据存储层需要兼容



二、AB Test



1. 简介



AB test 是一种灰度方式,通常差异度较小,侧重于从多种方案中选择最优方案。



简单来说,就是为同一个目标制定两个方案(比如两个页面),让一部分用户使用 A 方案,另一部分用户使用 B 方案,记录下用户的使用情况,看哪个方案更符。



一般来说,每个设计方案应该大体上是相同的,只是某一个地方有所不同,比如某处排版、文案、图片、颜色等。然后对不同的用户展示不同的方案。



 



2. 优缺点



优点:避免选择分歧和反复试错,优化决策,最终方案有数据支持



缺点:开发和测试周期增加,多套方案出现问题的可能性更高



 



3. 核心思想



多方案并行测试



同一个用户(一般通过cookie控制)展现同一版本



以某种规则优胜劣汰。



 



4. 实现步骤



定义策略:确定分流的目的、放量的规模、递增的频率、回滚的策略等;



筛选用户:确定分流访问的用户特征,定义规则(根据 ip, user_id, cookie, 业务需求(商户)等因素,制定分流策略)或导入名单;



访问分流:技术支撑,根据分流策略向用户展示不同内容;



发布运行;根据不同的实现方案进行部署;



采集分析:收集数据,比较不同方案的效果,确定最终方案