如何从socket-io-redis获取redis商店客户端?

时间:2016-10-22 05:36:24

标签: node.js socket.io node-redis

socket-io-redis 使用redis进行连接,我想知道如何从库中获取redis存储客户端,以便我可以使用该客户端在redis中存储键值对。 / p>

var redis   = require('socket.io-redis');
var socketio = require('socket.io');

io = socketio.listen(app);    
io.adapter(redis({ host: 'localhost', port: 6379 }));

我正在使用节点集群模型,所以我不想创建一个新的redis客户端,因为我已经拥有了一个。

1 个答案:

答案 0 :(得分:2)

显示here

var adapter   = redis({ host: 'localhost', port: 6379 });
var pubClient = adapter.pubClient;
io.adapter(adapter);

还有一个等效的adapter.subClient,但您不应该使用它(在&#34中运行的客户;订阅" 模式不应该'用于常规Redis命令。)

我不确定使用pubClient发出命令是否明智。 Redis可以很好地处理多个连接,并且从pubClient实例创建新客户端很容易:

var pubClient = adapter.pubClient.duplicate();