增量actor状态复制?

时间:2016-07-28 10:02:10

标签: replication azure-service-fabric

我想知道Service Farbic中的actor状态是否使用某种增量delta / diff机制进行复制,或者是否为每次更改复制了完整状态。

假设我们有一个具有相当大的状态有效负载的actor,比如100KB。我们还要说一个计数器值嵌入在该状态中。计数器以高频率改变,而其余状态以非常低的频率改变。

在这种情况下,如果为每次更改复制完整状态将是浪费,我们应该考虑另一种设计。

但是,如果Service Farbric能够进行增量复制,那么这种方法可能很有吸引力。

有人知道这方面的细节吗?

也许Service Fabric在复制期间对序列化状态使用二进制delta / diff算法,或者状态更改可能是每个州名称增量

1 个答案:

答案 0 :(得分:2)

这是州名。如果您查看方法IActorStateProvider.SaveStateAsync方法,您会看到它接受ActorStateChange列表。持久化提供程序(KvsActorStateProvider)序列化该列表中的每个值(删除除外),并更新存储。

相关问题