Redis Cluster
图解
1
每个节点主数据不同,是数据的子集
利用多台服务器构建集群提高超大规模数据处理能力
同时提供高可用支持
2
Redis Cluster 集群采用 Hash Slot(哈希槽)分配
Redis 集群预分好 16384 个槽,初始化集群时平均规划给每一台 Redis Master
为什么是 16384?
在 Redis 集群中槽分配的元数据会不间断的在 Redis 集群中分发,以保证所有节点都知晓槽的分配情况
16384=16k,在发送心跳包时使用 char 进行 bitmap 压缩后是 2k(2*8(8 bit) * 1024(1k)=16K)
通常我们不会部署超过10000个 Redis 主节点,因此16384就够用了
配置
cluster-master-0.conf
cluster-master-1.conf
cluster-master-2.conf
cluster-slave-0.conf
cluster-slave-1.conf
cluster-slave-2.conf
注意
- 集群配置中不允许出现 replicaof 的配置项,否则就会报
F:\下载目录\Redis-x64-5.0.14.1>.\redis-server.exe .\config\cluster\redis-cluster0.conf [31444] 20 Feb 10:59:14.659 # *** FATAL CONFIG FILE ERROR *** [31444] 20 Feb 10:59:14.659 # Reading the configuration file, at line 1345 [31444] 20 Feb 10:59:14.660 # >>> 'replicaof 127.0.0.1 6380' [31444] 20 Feb 10:59:14.660 # replicaof directive not allowed in cluster mode