一致核心
维护一个更小的集群,提供更强的一致性,以允许大型数据集群在不实现基于仲裁的算法的情况下协调服务器活动。
问题
当集群需要处理大量数据时,它会使用越来越多的服务器。对于一个服务器集群,有一些常见的需求,例如选择一个服务器作为特定任务的主服务器,管理组成员信息,将数据分区映射到服务器等。此功能需要线性化的强一致性保证。该实现还需要是容错的。一种常见的方法是使用基于多数仲裁的容错共识算法。但是,在基于仲裁的系统中,吞吐量会随着集群规模的增加而下降。
解决方案
实现一个由 3 到 5 个节点组成的小型集群,该集群提供线性化保证以及容错性。一个单独的数据集群可以使用小型一致性集群来管理元数据,并使用租约等原语进行集群范围的决策。这样,数据集群可以扩展到大量服务器,但仍然能够使用较小的元数据集群执行需要强一致性保证的某些操作。
有关更多详细信息,请访问 oreilly.com 上的在线电子书第 25 章
此模式是分布式系统模式的一部分
2023 年 11 月 23 日