①、对于RedisCluster中为什么Node至少是三个
个人理解RedisCluster在使用gossip协议进行通信的时候,也就是交换的数据信息(消息体和消息头组成)。在消息体中,会携带一定数量的其他节点信息用于交换。
规定:携带其他节点的信息约为集群总节点数量的1/10,但至少携带3个节点的信息。
②、对于Redis集群节点数量为什么要是奇数个?
1、防止由脑裂造成的集群不可用(集群可用原则:可用节点数量 > 总节点数量/2)。对一个偶数折半必然会出现两个数相等(可用节点数量 = 总节点数量/2)。
2、在容错能力相同的情况下,奇数台更节省资源(例如:3个节点的集群,允许有一个节点宕机,4个节点的集群,允许有一个节点宕机)。
更多分享持续更新中,感兴趣的朋友请移步至个人公众号,谢谢支持😜😜......
公众号:wenyixicodedog