gpt4 book ai didi

scala - 如何在生产中演化 akka-persistence 事件?

转载 作者:行者123 更新时间:2023-12-05 00:58:51 24 4
gpt4 key购买 nike

假设我们使用 akka-persistence 设计了我们的系统。现在,我们将事件存储在事件存储中。同时,系统在生产中,需要一个新功能。因此,我们发现最好的方法是在事件中添加或修改字段。让我们说通过更改字段名称或类型。

现在,我们有两个版本的事件,一个在生产中,一个在新部署中,它们不兼容。如果我们尝试从旧版本恢复数据,我们将失败。

除了数据迁移之外,最好的方法是什么?

最佳答案

这绝对是在生产中使用 akka 持久性的更大问题之一。在akka-user mailing list上有很多关于这个的讨论。 .

我会说,只要新功能只需要附加信息,使用允许有限模式演变的序列化格式(例如 google protocol buffers 或 json)将是一个解决方案。

如果新功能需要更改现有数据,则只能进行数据迁移。

关于scala - 如何在生产中演化 akka-persistence 事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31559143/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com