2.13. 集群备份和恢复


执行跨站点复制的数据中心集群通常会"匿名"整个 CPU 和内存分配。当您考虑跨站点复制的大小时,主要问题是集群间的状态传输操作的影响。

例如,NYC 中的 Data Grid 集群离线,客户端切换到 LON 中的 Data Grid 集群。当 NYC 中的集群重新上线时,状态传输是从 LON 到 NYC。此操作可防止客户端的过时的读取,但对集群接收状态传输的性能损失。

您可以在集群中分发状态传输操作所需的处理增加。但是,状态传输操作的性能影响完全取决于环境和因素,如数据集的类型和大小。

Active/Active 部署的冲突解析

当多个站点处理客户端请求时,Data Grid 会检测与并发写入操作冲突,称为 Active/Active 站点配置。

以下示例演示了并发写入如何为 LONNYC 数据中心中运行的 Data Grid 集群产生冲突条目:

            LON       NYC

k1=(n/a)    0,0       0,0

k1=2        1,0  -->  1,0   k1=2

k1=3        1,1  <--  1,1   k1=3

k1=5        2,1       1,2   k1=8

                 -->  2,1 (conflict)
(conflict)  1,2  <--
Copy to Clipboard Toggle word wrap

在 Active/Active 站点配置中,您不应该使用同步备份策略,因为并发写入会导致死锁并丢失数据。借助异步备份策略(policy=async),数据科学家为您提供了处理并发写入的跨站点合并策略。

就性能而言,Data Grid 用来解决冲突的合并策略需要额外的计算,但通常不会造成显著的损失。例如,默认的跨站点合并策略使用字典比较或"字符串比较",这需要几纳秒才能完成。

Data Grid 还为跨站点合并策略提供了一个 XSiteEntryMergePolicy SPI。如果您确实将 Data Grid 配置为解决与自定义实现冲突,您应该始终监控性能以监管任何负面影响。

注意

XSiteEntryMergePolicy SPI 调用非阻塞线程池中的所有合并策略。如果您实现了阻塞自定义合并策略,它可能会耗尽线程池。

您应该将复杂或阻止策略委派给不同的线程,并且您的实施应返回当合并策略在其他线程中执行时完成的 CompletionStage

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2025 Red Hat