蓝/绿部署,金丝雀发布和数据库一致性

时间:2018-05-10 19:10:43

标签: deployment architecture blue-green-deployment canary-deployment

有一些技术可以确保新的更改不会破坏系统,如上面提到的蓝绿色或金丝雀部署。两者都意味着部分应用更改(仅更改基础结构的一部分,或者与旧版本并行运行新版本)。

但是,如果数据结构出现任何重大变化,我就不知道如何保持数据的一致性(让我们说,你对GDPR进行了更改 - 非常可能的情况,是吧?)。

即使在基于NoSQL的解决方案上,它也可能导致问题(正如我想象的那样)。我试图寻找解决方案,但问题只是被广泛提及,但很少得到解决。

如何引入此类技术并保持数据一致性?它在现实生活中如何正常实现?

1 个答案:

答案 0 :(得分:0)

如果我正确理解了您的问题,您就会谈到扩展合同模式,您可以在其中更改系统以在更新期间支持多个数据结构。

对于无法在一次部署中完成的大型数据结构更改,您将执行多个扩展合同。

也称为平行变化。

https://martinfowler.com/bliki/ParallelChange.html