分布式领域之服务部署

在分布式世界里,一个服务有多个实例,所以部署或升级一个服务也变得比较麻烦一些。这里,我们讨论一些服务部署的模式。

一般来说,我们有下面的一些服务部署模式。

  • 停机部署

         把现有版本停掉,然后部署新的版本

  • 蓝绿部署
    • 部署好新版本后把流量从老版本切过去
  • 滚动部署
    • 一点一点的升级现有的服务
  • 灰度部署
    • 把一部分用户切换到新的版本上来,然后看下有没有BUG或不可预知的结果产生。如果OK就扩大升级,直到全部升级完成。
  • AB测试

            同时上线两个版本,然后做相关的比较。

重点讲解下灰度发布和AB测试

灰度发布是对质量没信心,主要是因为担心服务有BUG,担心其发布质量不过关,所以一般的做法是缓慢的切流量一小部分到新的服务上来,如果OK,在主键切换另外的流量,直到全部升级完成。

AB测试是对功能没信心所以会同时上线两个版本,用户观察用户的使用情况,常见于UI改版或新增某模块或功能,通过数据埋点分析用户的使用情况,以活动整体情况。

所以灰度发布是对质量没信心,而AB测试是对产品功能没信心或没把握,笔者比较常见的比如百度客户端改版通常会发通知邀请体验,这个体验版就是AB测试功能

原文地址:https://www.cnblogs.com/zhangfengshi/p/9238029.html