首页 新闻 搜索 专区 学院

redis cluster是怎么分配slot的?

0
悬赏园豆:20 [已解决问题] 解决于 2020-04-23 19:07

比如我有两个实例,每个实例8192个slot,若有3个实例,每个实例5461个slot吗?那这样的话扩容的时候不是所有的数据都要迁移?

具体的分配算法是怎么样的呢?

pierwzw的主页 pierwzw | 初学一级 | 园豆:158
提问于:2020-04-18 13:23
< >
分享
最佳答案
0

如果你用的是 Redis cluster模式,那么至少需要6个Redis服务,分别为 主 主 主 从 从 从。
默认情况下 slot 是平均分配到 3个 主实例上。
如果需要扩容的话,新redis实例服务加入集群后,需要进行重新分片。
从 3个主实例上迁移若干 数量尽量相同的、连续的 slot 至新的redis主实例上。从而达成所有主实例 slot数量 大致相同。
具体可参考 http://www.redis.cn/topics/cluster-tutorial.html

收获园豆:20
gt1987 | 小虾三级 |园豆:650 | 2020-04-19 12:04

多谢

pierwzw | 园豆:158 (初学一级) | 2020-04-19 12:50

总共16384个slot(不论节点数量),默认平均分配,也可以通过命令行自定义槽分配。

不会Redis | 园豆:670 (小虾三级) | 2020-04-24 10:45
其他回答(1)
0

楼上说的对,不过redis cluster很不友好,推荐用codis

yytxdy | 园豆:1129 (小虾三级) | 2020-04-20 09:30
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册