2

Azure Service Fabric 文档说:

Actor 为开发人员提供了灵活性,可以将丰富的对象结构定义为 Actor 的一部分或在 Actor 之外引用对象图。在缓存术语中,actor 可以后写或直写,或者我们可以在成员变量粒度上使用不同的技术。

StatefulActoror而言StatefulActor<T>,如何实现 write-behind 以提高状态更改方法的吞吐量?

4

1 回答 1

3

一种可能的实现是将您的变异方法标记为[Readonly],以便服务结构运行时不会将其持久化State到集群副本。因此,您可以使用您描述的更改修改内存中的成员变量,成功或失败将很快返回到调用代码。在修改成员变量的同时,您将注册一个提醒,该提醒将修改State属性并因此在集群中的副本之间异步分发更改。

您需要考虑在提醒触发之前将参与者移动到不同节点的可能性,从而导致读取调用以返回State在更新之前从属性读取的陈旧数据。

于 2015-12-15T13:25:38.803 回答