GemFire允许通过实施Delta
界面(hasDelta
,toDelta
和fromDelta
)发送增量而不是完全破坏的对象来减少更新期间的网络负载。
可以假设如果从不同的更新程序收到同一个密钥的多个更新,则上述方法不会同时在其上运行吗?
答案 0 :(得分:1)
GemFire(现在是Apache Geode(Incubating))预先计算传入Delta
更新的“增量”位。因此,hasDelta
和toDelta
会在新值上调用,甚至在“实际”放入Region
之前,并且不同步。应用程序/实现需要处理它。另请注意,toDelta
仅在更新发起的第一个成员处调用。
另一方面,在对“密钥”条目进行锁定之后,在“实际”将新值放入{{1}时,会对现有值(在接收成员的缓存处)调用fromDelta
}}。不同键上的Delta更新同时发生,就像正常更新一样。
Region
属性Region
或cloning-enabled
属性Cache
决定增量位是应用于现有值还是应用于其副本。
delta事件的分布方式/位置与GemFire中正常事件分布的方式非常相似。
如果您还没有这样做,请访问此页面this page了解详细信息。