GemFire delta传播线程安全

时间:2015-08-23 14:00:01

标签: gemfire

GemFire允许通过实施Delta界面(hasDeltatoDeltafromDelta)发送增量而不是完全破坏的对象来减少更新期间的网络负载。

可以假设如果从不同的更新程序收到同一个密钥的多个更新,则上述方法不会同时在其上运行吗?

1 个答案:

答案 0 :(得分:1)

GemFire(现在是Apache Geode(Incubating))预先计算传入Delta更新的“增量”位。因此,hasDeltatoDelta会在新值上调用,甚至在“实际”放入Region之前,并且同步。应用程序/实现需要处理它。另请注意,toDelta仅在更新发起的第一个成员处调用。

另一方面,在对“密钥”条目进行锁定之后,在“实际”将新值放入{{1}时,会对现有值(在接收成员的缓存处)调用fromDelta }}。不同键上的Delta更新同时发生,就像正常更新一样。

Region属性Regioncloning-enabled属性Cache决定增量位是应用于现有值还是应用于其副本。

delta事件的分布方式/位置与GemFire中正常事件分布的方式非常相似。

如果您还没有这样做,请访问此页面this page了解详细信息。