1.6. state transfer


State transfer 是一个管理操作,可在站点之间同步数据。

例如,LON 脱机,NYC 开始处理客户端请求。当您重新上线时, LON 中的 Data Grid 集群与 NYC 中的集群没有相同的数据。

为确保数据在 LONNYC 之间保持一致,您可以将状态从 NYC 推送到 LON

  • state transfer 是双向的。例如,您可以将状态从 NYC 推送到 LON 或从 LON 推送到 NYC
  • 将状态推送到离线站点会使它们重新上线。
  • 状态传输只覆盖两个站点、原始站点和接收站点中存在的数据。Data Grid 不会删除数据。

    例如,当 LONNYC 离线时,"k2"存在于 LONNYC 上。当您使 LON 重新上线时,该位置上仍然存在"k2"。如果您将状态从 NYC 推送到 LON,则传输不会影响 LON 上的"k2"。

提示

为确保缓存的内容在状态传输后相同,请在推送状态前从接收站点的缓存中删除所有数据。

使用 clear () 方法或 CLI 中的 clearcache 命令。

  • 状态传输不会覆盖启动推送后发生的数据的更新。

    例如,LONNYC 中存在 "k1,v1"。LON 脱机,因此您将状态从 NYC 推送到 LON,这会使 LON 重新上线。在状态传输完成前,客户端将"k1,v2"放在 LON 上。

    在这种情况下,来自 NYC 的状态传输不会覆盖 "k1,v2",因为启动推送后该修改发生。

自动状态传输

默认情况下,您必须使用 CLI 或 JMX 或 REST 手动执行跨站点状态传输操作。

但是,在使用异步备份策略时,Data Grid 可以自动执行跨站点状态传输操作。

当备份位置重新上线且网络连接稳定时,Data Grid 会在备份位置之间启动双向状态传输。例如,Data Grid 同时将状态从 LON 传输到 NYCNYCLON

注意

为了避免临时网络断开触发状态传输操作,备份位置必须满足两个条件才能离线。备份位置的状态必须脱机,并且不能包含在 JGroups RELAY2 的跨站点视图中。

缓存启动时也会触发自动状态传输。

LON 启动的场景中,在缓存启动后,它会向 NYC 发送通知。之后,NYC 启动一个单向状态转移到 LON

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.