目录
redis三种集群模式
1、主从
2、哨兵(Sentinel)
3、集群(Cluster)
Redis Cluster为什么有16384个槽?
1、8KB的心跳包太大
2、集群的数量不会超过1000。
主从配置和集群配置区别
1、主从
2、集群
redis三种集群模式
1、主从
读写分离。master写,slave读。通常是一主二从。主服务器宕机,需要人工去切换。
2、哨兵(Sentinel)
哨兵是主从的2.0版,主服务器宕机,可以自动切换。
3、集群(Cluster)
主从和哨兵,都是只有一个主节点,主节点负责写入,这就会存在性能瓶颈。这时候就需要多主多从。节点之间通过gossip 协议同步数据。数据分片(sharding)16384个哈希槽。
redis三种集群模式--主从、哨兵、cluster集群的区别_redis主从和哨兵的区别_ayu_programer的博客-CSDN博客
Redis Cluster为什么有16384个槽?
如下表,一看便知,16384的单位是bit,即2KB。
bit | 16384 |
Byte | 2048 |
KB | 2 |
Redis 集群有16384个哈希槽,每个key通过CRC16校验后对16384取模来决定放置哪个槽,集群的每个节点负责一部分hash槽。
1、8KB的心跳包太大
CRC16算法最多可以分配65535。65535bit = 8KB,8KB的心跳包,太大了。redis集群不会有超过1000个master节点,所以16k(16000)的槽位是个比较合适的选择
2、集群的数量不会超过1000。
集群节点越多,心跳包的消息体内携带的数据越多。如果节点过1000个,也会导致网络拥堵。因此redis作者,不建议redis cluster节点数量超过1000个。
Redis Cluster为什么有16384个槽?_李树江的博客-CSDN博客
主从配置和集群配置区别
1、主从
master 主服务器
requirepass passwordslave 从服务器
masterauth password
requirepass password (这个可以不配)requirepass 是客户端访问redis需要的密码,所以master这台需要配。slave可配可不配
masterauth 是slave访问master需要的密码。所以salve需要配。
2、集群
每个节点
masterauth password
requirepass password每个节点都需要配置这两个
redis的主从搭建和密码配置_redis主从如果存在密码如何配置_万wu皆可爱的博客-CSDN博客
====================分割线=======================
文章到此已结束,以下是紫薯布丁
master 主服务器
requirepass password
slave 从服务器
masterauth password
requirepass password (这个可以不配)
requirepass 是客户端访问redis需要的密码,所以master这台需要配。slave可配可不配
masterauth 是slave访问master需要的密码。所以salve需要配。