3.2. 复制的缓存


写入任何节点上的复制缓存的条目将复制到集群中的所有其他节点,并可以从任何节点本地检索。复制模式提供了一种快速轻松地在集群中共享状态的方法,但复制只在小集群(在 10 个节点下)中表现良好,因为使用集群大小线性扩展所需的消息数量。Data Grid 可以配置为使用 UDP 多播,这会将此问题降低到某种程度。

每个键都有一个主所有者,用于序列化数据容器更新以提供一致性。要了解有关如何分配主要所有者的更多信息,请阅读 主要所有者部分

图 3.2. 复制模式

复制模式可以是同步的,也可以是异步模式。

  • 同步复制会阻止调用者(例如,在 cache.put (key, value)上),直到修改成功复制到集群中的所有节点。
  • 异步复制在后台执行复制,写入操作会立即返回。不建议异步复制,因为远程节点上发生的通信错误或错误不会报告给调用者。

如果启用了事务,则不会通过主所有者复制写入操作。

  • 使用 pessimistic 锁定时,每个写入都会触发锁定消息,该消息广播到所有节点。在事务提交期间,源器会广播一阶段准备消息和解锁消息(可选)。一个阶段准备,或解锁消息是 fire-and-forget。
  • 使用最佳锁定时,原始器会广播准备消息、提交消息和解锁消息(可选)。同样,一阶段准备或解锁消息是 fire-and-forget。
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.