Redis集群策略

Redis提供了三种集群策略:

  1. 主从模式:主从模式相较于以下两种模式相对于基础简单。主库负责读写操作,而从库只负责读。并且主库与从库之间保持数据一致性。在该模式下,客户端可以连接主库或者某一个从库。如果主库宕机或某一个从库宕机了,那么客户端需要手动修改ip地址,才能保持Redis服务进行。但是该模式对于大容量数据难以解决。很难进行扩容这是因为整个集群所能存储的数据受到某台机器的内存容量。

  1. 哨兵模式:哨兵模式可以看成是基于主从模式进行了一次升级操作。该模式下在主从库基础上增加了哨兵节点。如果主库宕机了,那么哨兵节点就会发现,然后从从库中选择一个库作为主库。

此外,那么就有人问了如果哨兵节点也坏了怎么办?

当然哨兵节点是可以做集群的。如果一个哨兵节点宕机了,还有其他哨兵节点继续工作。在该模式下就可以保证Redis一个高可用性。但是仍无法解决Redis扩容问题、以及接收大容量数据问题。

  1. Cluster模式:当前开发环境中,该模式在应用中比较常见。因为它既支持多主多从,并且会根据Key进行槽位分配,可以使不同的Key分配到不同主节点上。在该模式的支持下,Redis完美解决了大容量数据接收难的问题。当然Cluster模式也跟哨兵模式一样,在一个主节点下存在大量从节点,即使主节点发生了宕机,也丝毫不影响Redis服务进行,因为它会马上找到一个从节点作为备用主节点。

综上所述:在实际应用开发中,根据业务场景不同选择不同模式进行开发,可以说是得心应手。对于大容量数据存储情况下,选用Cluster模式作为集群策略是最好不过的。如果数据请求量不大情况下可选择哨兵模式。

猜你喜欢

转载自blog.csdn.net/weixin_51220967/article/details/129659608