为什么Redis每2分钟就给予“移动”错误

iq3niunx  于 12个月前  发布在  Redis
关注(0)|答案(1)|浏览(117)

Redis给出了MOVED错误。我正在为Redis的Azure缓存使用企业级。使用下面的Node.js代码与之交互。

const redis = require('redis');

const client = redis.createClient({
    url: "dns",
    password: "***",
    connectTimeout: 100000
});

字符串

gwo2fgha

gwo2fgha1#

MOVED消息意味着你正在寻找的键不在集群中的特定分片上。它已经被移动到另一个分片或从未在这个分片上。通常这是由Node Redis为你处理的,你只需要取回你的值。
然而,Node Redis需要被告知它正在连接到一个集群来执行此操作。您可以通过调用.createCluster而不是.createConnection来执行此操作。有一个guide包含所有细节,但简短版本是:

import { createCluster } from 'redis';

const cluster = createCluster({
  rootNodes: [
    {
      url: 'redis://10.0.0.1:30001'
    },
    {
      url: 'redis://10.0.0.2:30002'
    }
  ]
})

字符串
希望这对你有帮助。

相关问题