首页 > 解决方案 > redis 集群设置并没有在所有节点上发生

问题描述

我是redis的新手。

我有多个 redis 实例正在运行。当我尝试设置密钥时,我收到错误为“MOVED xxxx IP:port.

我应该能够设置并使用集群中的任何节点。有人可以帮我我想念什么。

root@redis-0:/# redis-cli
127.0.0.1:6379>
127.0.0.1:6379> set name1 Rock
(error) MOVED 12933 10.60.3.54:6379
127.0.0.1:6379>
127.0.0.1:6379>
root@redis-0:/#
root@redis-0:/# exit


root@redis-1:/#
root@redis-1:/# redis-cli
127.0.0.1:6379>
127.0.0.1:6379>
127.0.0.1:6379> get name1
"deba"
127.0.0.1:6379>
127.0.0.1:6379> set name2 Tom
(error) MOVED 742 10.60.3.55:6379
127.0.0.1:6379>

127.0.0.1:6379> CLUSTER NODES
cbe713bf93c67adceed0d79e5b2d6a5a40b31625 10.60.3.53:6379@16379 master - 0 1533054504070 2 connected 5461-10922
2a65bcc6355cecb58df8d99dbee4da1fe4b5af70 10.60.3.55:6379@16379 master - 0 1533054502065 1 connected 0-5460
e7b5ff6bbb90cba775b1128f88de70c116ef18f6 10.60.3.54:6379@16379 myself,master - 0 1533054501000 3 connected 10923-16383
127.0.0.1:6379>

标签: redis

解决方案


我应该能够设置并使用集群中的任何节点。

您可以这样做,但您必须转到正确的节点来设置给定的密钥。

我建议您使用 Redis Cluster-aware 客户端和/或阅读有关集群的工作原理,特别是数据是如何分片的,位于https://redis.io/topics/cluster-tutorial


推荐阅读