当前位置: 首页 > 知识库问答 >
问题:

hazelcast中的同步复制

钦德佑
2023-03-14

在http://docs.hazelcast.org/docs/latest-development/manual/html/distributed_data_structures/map/backing_up_maps.html中提到,“备份操作是同步的,所以当一个map.put(key,value)返回时,可以保证映射项被复制到另一个成员”。

但是在另一个页面http://docs.hazelcast.org/docs/latest-development/manual/html/consistency_and_replication_model.html中,提到“有两种类型的备份复制可用:同步和异步。尽管它们的名称意味着什么,但这两种类型仍然是惰性(异步)复制模型的实现”。

这两种说法看起来都有点矛盾。谁能给我点线索吗?

Hazelcast中的复制真的是同步的吗?我需要同时更新所有者和备份节点中的值。

共有1个答案

崔琦
2023-03-14

这里的解释更正确。在CAP定理的背景下,Hazelcast是一个AP积。因此,尽力而为一致性是针对复制的,同步备份和异步备份都是惰性复制模型的实现。正如页面中所解释的;两种选择的区别是;

  • 在同步备份中,调用方将阻止备份副本应用备份更新,并将确认发送回调用方
  • 异步备份的工作方式是触发&忘记。

下面,请看Hazelcast参考手册中的部分:

 类似资料:
  • 93.背景 HBase 中的当前复制异步。因此,如果主集群崩溃,则从集群可能没有最新数据。如果用户想要强一致性,那么他们就无法切换到从属群集。 94.设计 请参阅 HBASE-19064 上的设计文档 95.运行和维护 Case.1 设置两个同步复制集群 在源集群和对等集群中添加同步对等体。 对于源群集: hbase> add_peer '1', CLUSTER_KEY => 'lg-hadoo

  • 我想使用hazelcast作为Spring的缓存提供程序。假设我能够配置集群并选择适当的hazelcast CacheManager实现。 我想确保hazelcast缓存支持这里描述的'sync'注释属性 我知道有一种分布式读取式IMap具有与同步缓存类似的行为。并且我可以通过密钥显式地锁定映射条目。我应该使用这些结构作为替代吗?

  • 问题内容: 我正在查看包含同步方法的第三方库中的一些代码,在此方法中,有一个锁定在实例变量上的同步块。与此类似: 这有意义吗?如果是这样,在同步方法中使用同步语句有什么好处? 鉴于同步方法锁定了整个对象,对我来说似乎是多余的。在使用非私有的实例变量时,这种方法是否有意义? 问题答案: 在您的示例中,该方法 同时 锁定了和的实例。其他方法可能仅锁定对象的实例 或 对象。 因此,是的,这完全取决于他们

  • 我使用Hazelcast作为分布式键值存储。我将储存大约。100K密钥,为了加强hazelcast集群节点之间的数据一致性,我使用了与IMap作为分布式数据结构的同步备份。 在2个Unix盒中运行包含2个节点的hazelcast集群,问题是:在任一个节点中加载1000条记录的示例数据时,我看不到同步备份发生,尽管我已经明确地将同步备份设置为1,并从日志和hazelcast管理中心对其进行了验证。当

  • 我有一个链接生成器服务,它能够生成到特定内容类型的链接(用户的详细信息页面,内容项目的详细信息页面等)。 这个服务真的很好用,而且有同步功能: 现在,我必须为登录用户引入单独的路由,以便将更改为。 我需要添加到链接生成器服务中的唯一更改是检查并返回不同的路由URL。这不是一个问题,只要我的登录用户的信息将是同步可用的。但这不是... 我有一个返回一个承诺。第一次调用它时,它实际上发出了一个服务器请

  • 数据中心DC1和数据中心DC2相距60英里,数据中心DC3与DC1和DC2相距600英里。