当前已经有了一版线上用户正在使用的方案,然后算法对某些策略做了模型迭代或者规则优化(反映在cxr或者更好的用户体验)产生了一版新的方案,新方案的上线流程是怎样的?
方式一:新方案代码直接发版上线。没啥优点,缺点是万一线上用户使用效果不好,很难再回滚到就方案的代码。
方式二:开关配置,有一个开关是否使用新旧方案,相比于方案一就是当新方案效果不佳时(往往需要一周左右的数据分析),能方便快速切回到旧方案,缺点是“一揽子回切,不够平滑”。
方式三:AB实验,逐步放流量。新方案上线前研发、产品先加白名单验证,看看用户体验、功能是否符合预期。白名单方式既对线上用户无感知,又能基于线上的数据验证功能or策略效果。白名单验证完成后再逐步开流量,比如10%流量访问新功能。此时产品或者算法可基于这10%的流量做数据分析效果验证(一周左右),验证完成后若效果正向,则可逐步全量到新方案。若效果不好,则可关闭新功能的流量,然后研发可继续开发改进,再上线。