devops之部署模式
devops之部署模式
蓝绿发布
旧版本仍旧提供服务,同时部署新版本,等新版本测试ok后,流量全部导入新部署版本。
特点: 没有downtime,会存在额外基础设施的浪费(双倍示例)。

金丝雀((Canary)发布 /灰度发布
金丝雀发布/灰度发布是在原有版本可用的情况下,同时部署一个新版本应用作为“金丝雀”,测试新版本的性能和表现
部署过程:
- LB摘除金丝雀服务器
- 发布“金丝雀”应用
- 应用测试
- 金丝雀服务重新加入LB
- 如果成功,升级剩余服务器;否则回滚

特点:
如果有问题,只影响小部分用户
自动化程度要求高,发布缓慢
ABTesting:
AB测试是为Web或App界面或流程制作两个(A/B)或多个(A/B/n)版本,在同一时间维度,分别让组成成分相同(相似)的访客群组随机的访问这些版本,收集各群组的用户体验数据和业务数据,最后分析评估出最好版本正式采用。
AB test就是一种灰度发布方式,让一部分用户继续用A,一部分用户开始用B,如果用户对B没有什么反对意见,那么逐步扩大范围,把所有用户都迁移到B上面来
滚动发布 (rolling update)
新旧版本同时在线,新版本逐步替代旧版本。一般是取出一个或者多个服务器停止服务,执行更新,并重新将其投入使用。周而复始,直到集群中所有的实例都更新成新版本。
流量模式:
