redis 的副本和分片

什么是分片

分片也叫条带,指Redis集群的一个管理组,对应一个redis-server进程。一个Redis集群由若干条带组成,每个条带负责若干个slot(槽),数据分布式存储在slot中。Redis集群通过条带化分区,实现超大容量存储以及并发连接数提升。

每个集群实例由多个分片组成,每个分片默认为一个双副本的主备实例。分片数等于实例中主节点的个数。

什么是副本

副本指缓存实例的节点,包含主节点和备节点。单副本表示实例没有备节点,双副本表示实例有备节点(一个主节点,一个备节点)。例如主备实例的副本数设置为3时,表示该实例有1个主节点,2个备节点。

不同实例类型的副本和分片数

  • 单机实例:单机实例只有1个节点,1个Redis进程,当Redis进程故障后,DCS为实例重新拉起一个新的Redis进程。
  • 主备/读写分离实例:分片数为1,包含一个主节点,一个或多个备节点。当主节点出现故障时,会进行主备倒换,恢复业务。副本数(备节点)越多,保障性更强,对实例的性能没有影响。
  • 集群实例:集群实例由多个分片组成,每个分片默认是一个双副本的主备实例。例如一个3分片,3副本的集群实例,则每个分片都有3个节点(个1主节点,2个备节点)。