Nodejs:如何连接多个redis?

时间:2017-03-29 13:54:50

标签: node.js redis node-redis

如何使用nodejs设置两个redis服务器(主/从)? 我使用node_redis,已尝试redis://host:port,host2:port2?db=10&password=bar

var connectionString = 'redis://host:port,host2:port2?db=10&password=bar'
var client = redis.createClient(connectionString);
client.set('key','value',function(err,reply){
   console.log(err);  //the db option is added twice and does not match
   console.log(reply);
});

2 个答案:

答案 0 :(得分:0)

几个月后,我发现ioredis可以通过nodejs帮助集群作业!

var Redis = require('ioredis');

var cluster = new Redis.Cluster([{
  port: 6380,
  host: '127.0.0.1'
}, {
  port: 6381,
  host: '127.0.0.1'
}]);

cluster.set('foo', 'bar');
cluster.get('foo', function (err, res) {
  // res === 'bar'
});

答案 1 :(得分:0)

如果您不想将Redis服务器配置为以集群模式运行,则可以使用thunk-redis库。该库支持连接到Redis master-slave,而无需配置集群或使用哨兵。

您只需将多个IP地址添加到客户端:

const client = redis.createClient(['127.0.0.1:6379', '127.0.0.1:6380'], {onlyMaster: false});

此外,这是Redis documentation

中建议的Node.js库。