scala – 如何在生产中发展akka-persistence事件?
发布时间:2020-12-16 18:01:57 所属栏目:安全 来源:网络整理
导读:假设我们使用akka-persistence设计我们的系统.现在,我们将事件存储在事件存储中.而在生产系统中,要求提供新功能.因此,我们发现最好的方法是在事件中添加或修改字段.让我们说改变字段名称或类型. 现在,我们有两个版本的事件,即我们在生产中的版本,以及新部署
假设我们使用akka-persistence设计我们的系统.现在,我们将事件存储在事件存储中.而在生产系统中,要求提供新功能.因此,我们发现最好的方法是在事件中添加或修改字段.让我们说改变字段名称或类型.
现在,我们有两个版本的事件,即我们在生产中的版本,以及新部署中的一个版本,它们是不兼容的.如果我们尝试从旧版本恢复数据,我们将失败. 除了数据迁移之外,最好的方法是什么? 解决方法
这绝对是在生产中使用akka持久性的一个更大问题.在
akka-user mailing list上有很多关于此的讨论.
我想说,只要新功能只需要额外的信息,使用允许有限的模式演变的序列化格式,如谷歌协议缓冲区或json将是一个解决方案. 如果新功能需要更改现有数据,则除了执行数据迁移之外,您无法做任何事情. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |