public static final int MAX_GROUP_SIZE = 7;一个CP组由3到7之间的奇数个CPMember组成。
为什么是7?没有更多?
CP子系统正在实施RAFT共识算法,该算法即使在发生节点故障的情况下也可以确保一致性。为了正确实现RAFT,CP子系统的某些部分以同步行为实现(其中,可以异步实现AP子系统中的相似功能)。
此同步实现意味着参与子系统的节点越多,由于成员响应速度慢而导致延迟的可能性就越大。由于所有节点都参与每次更新,因此还需要其他网络流量来支持每个其他节点。
因此,限制群集的大小有助于保持高性能和低延迟。如果需要更多节点,CP子系统允许配置多个一致性组,每个一致性组可以具有3到7个节点。这样,CP子系统的整体大小是无限的。只要将其划分为可管理大小的一致性组即可。