更新时间:2024-07-29 GMT+08:00
如何理解分片数与副本数?
什么是分片
分片也叫条带,指Redis集群的一个管理组,对应一个redis-server进程。一个Redis集群由若干条带组成,每个条带负责若干个slot(槽),数据分布式存储在slot中。Redis集群通过条带化分区,实现超大容量存储以及并发连接数提升。
每个集群实例由多个分片组成,每个分片默认为一个双副本的主备实例。分片数等于实例中主节点的个数。
什么是副本
副本指缓存实例的节点,包含主节点和备节点。单副本表示实例没有备节点,双副本表示实例有备节点(一个主节点,一个备节点)。例如主备实例的副本数设置为3时,表示该实例有1个主节点,2个备节点。
不同实例类型的副本和分片数
- 单机实例:单机实例只有1个节点,1个Redis进程,当Redis进程故障后,DCS为实例重新拉起一个新的Redis进程。
- 主备实例:分片数为1,包含一个主节点,一个或多个备节点。当主节点出现故障时,会进行主备倒换,恢复业务。
- 集群实例:集群实例由多个分片组成,每个分片默认是一个双副本的主备实例。例如一个3分片,2副本的集群实例,则每个分片都有2个节点(1个主节点,1个备节点)。
实例类型
分片数
副本数
负载均衡
占用IP数
单机
单分片
单副本,不支持多副本
-
1个
主备
单分片
默认双副本
Redis 4.0/5.0版本主备实例支持2-10副本,其他版本仅支持2副本
不支持
占用IP个数=副本数
Proxy集群
多分片
双副本,不支持其他副本数
支持
1个
Cluster集群
多分片
默认双副本
Redis 4.0/5.0版本Cluster集群支持1-5副本,Redis 6.0版本支持1-2副本
不支持
占用IP个数=副本数*分片数
父主题: Redis使用