use*_*968 7 amazon-web-services redis redis-cluster
我尝试在 AWS Redis 集群上执行 hmset 命令,但出现以下“移动”错误。不知道发生了什么。
移动 7652 10.0.4.210:6379
from rediscluster import StrictRedisCluster
startup_nodes = [{"host": self.host, "port": self.port}]
client = StrictRedisCluster(startup_nodes=startup_nodes,
decode_responses=True,
skip_full_coverage_check=True)
client.hmset('my_key', {'abc':'123'})
Run Code Online (Sandbox Code Playgroud)
Muh*_*man 17
由于您的数据被分片并分布到集群中的不同节点,您应该使用-coption 以便能够以集群模式连接到 redis。
在您的问题中,不知道您使用的是哪种类型的客户端库,但是同样的概念,您需要使用支持cluster mode. 这是nodejs 中的客户端包列表
如果您尝试获取数据,它会将您作为客户端重定向到包含所请求数据的正确分片/分区。
如果你有redis-cli,你可以试试这个:
redis-cli -c -h {REDIS_HOST_OR_PORT} -p 6379
Run Code Online (Sandbox Code Playgroud)
如果已docker安装,则可以使用以下命令连接到集群:
docker run -ti --rm redis redis-cli -c -h {REDIS_HOST_OR_IP} -p 6379
Run Code Online (Sandbox Code Playgroud)
当您以单机模式连接到redis集群中的一个节点,而查询的数据在集群中的其他节点上时,就会出现“MOVED”错误。
我不知道你是如何StrictRedisCluster实施的,但这个客户端肯定有问题。
| 归档时间: |
|
| 查看次数: |
9946 次 |
| 最近记录: |