项目场景:
提示:在AKKA项目中对某一机能进行修改的工作时,对Actor的传递消息的字段进行了追加,导致在程序在运行时出现了报错,Actor异常。
背景原因:在消息传递中使用了Cassandra中间件用于保存数据,在Actor或者非同期的时候读取数据。
问题就出在Cassandra保存数据时的数据一致性(互换性问题)
举个栗子:已经上线的代码使用的对象类有五个字段,然后呢用户使用过程中五个字段已经持久化在内存中(cassandra)了,当你修改了代码,把对象类从五个字段变成了六个字段后,上线后,用户操作时,正好用到了上一次保存的数据,此时会从Cassandra中获取旧的五个字段的对象类,但是呢~最新的代码中需要有六个字段进行处理(你也没有设置为optional类型)旧数据和新代码没办法进行解析和序列化。就会发生问题。
未完待续。。
问题描述:
提示:这里描述项目中遇到的问题:
例如:数据传输过程中数据不时出现丢失的情况,偶尔会丢失一部分数据
APP 中接收数据代码:
@Override
public void run() {
bytes = mmInStream.

最低0.47元/天 解锁文章
521

被折叠的 条评论
为什么被折叠?



