知识卡片

可逆决策:蓝绿部署与功能开关

普通读书笔记卡 · 1847.d

内容

既然演进中的系统总会以意料之外的方式出故障,架构师该关心的不是如何完全避免出错,而是如何让每个决策都容易撤销。蓝绿部署让新版本先在闲置的一套环境里跑起来,出问题随时切回旧环境;功能开关则把一次部署和一次真正对用户可见的发布拆成两个独立动作,先小范围验证行为再逐步放量,不对劲随时关掉。二者的共同思路是:把”做出改变”和”这个改变能不能轻松撤销”分开设计,而非事后再想办法收场。

参考来源

- 位置:《演进式架构(原书第2版)》第7章《构建可演进的架构》「可逆决策」蓝绿部署小节(源文件:_epub-src/EPUB/xhtml/chapter11_0001.xhtml) - 结论依据:原文明确蓝绿部署让新版本在闲置环境跑起来、出问题可切回旧环境,直接支持卡片论点。 - 原始内容:"许多DevOps实践使可逆决策——需要撤销的决策变得可能。例如,蓝绿部署,在这种情况下,运维有两个相同的(可能是虚拟的)生态系统——蓝色和绿色……如果绿色出现问题,那么运维可以不费太大力气就回到蓝色环境。"