使用同步备份的嵌入式Hazelcast备份读取 [英] Embedded Hazelcast backup reads with sync backups
本文介绍了使用同步备份的嵌入式Hazelcast备份读取的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我对运行Embedded Hazelcast时的备份读取有疑问。
如果启用了同步备份,并且我们还启用了备份读取,则在锁内执行更新时是否仍有过时读取的风险?
澄清一下我想知道的内容。
如果我使用上述配置。
如果所有更新都使用悲观锁定模式完成:
map.lock(key);
try {
Value value = map.get(key);
value.amount++;
map.put(key, value);
} finally {
map.unlock(key);
}
使用备份读取时,锁定内的读取将是安全的,对吗? 因为每次PUT都会确保在使用同步备份时更新所有备份?
推荐答案
是的,如果您使用同步备份,则您的数据在所有Hazelcast成员中是一致的,因此您的代码片段可以按预期工作。这一切都是假设Hazelcast星系团本身是稳定的(没有分裂的大脑)。
但是,请注意,锁定并不是实现目标的最佳方式。请看Hazelcast EntryProcessor。这篇关于使用同步备份的嵌入式Hazelcast备份读取的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文