当前位置: 代码迷 >> 综合 >> Redis中的客户端重定向
  详细解决方案

Redis中的客户端重定向

热度:30   发布时间:2024-03-07 22:51:35.0

比如在7291 端口的Redis 的redis-cli 客户端操作:

127.0.0.1:7291> set qs 1
(error) MOVED 13724 127.0.0.1:7293

服务端返回MOVED,也就是根据key 计算出来的slot 不归7191 端口管理,而是归7293 端口管理,服务端返回MOVED 告诉客户端去7293 端口操作。

这个时候更换端口,用redis-cli –p 7293 操作,才会返回OK。或者用./redis-cli -c -p port 的命令(c 代表cluster)。这样客户端需要连接两次。

Jedis 等客户端会在本地维护一份slot——node 的映射关系,大部分时候不需要重定向,所以叫做smart jedis(需要客户端支持)。

问题:新增或下线了Master 节点,数据怎么迁移(重新分配)?