最近做一个项目,需要用到redis做socket.io的共享,涉及到了socket.io-redis模块,遇到点问题,请大神指点1,2
发布于 10 年前 作者 hliu2008 10703 次浏览 最后一次编辑是 8 年前 来自 问答

说正题,做的是一个聊天项目,想部署多个节点的node服务器,目前是用,pm2 进行的多进程 分布式。 目前我所知道的是:

var redisAdapter = require('socket.io-redis');
var redis = require('redis');
var pub = redis.createClient(config.redis_config.port, config.redis_config.host, {auth_pass: config.redis_config.auth_pass});
var sub = redis.createClient(config.redis_config.port, config.redis_config.host, {
    detect_buffers: true,
    auth_pass: config.redis_config.auth_pass
});
io.adapter(redisAdapter({
    host: config.redis_config.host,
    port: config.redis_config.port,
    pubClient: pub,
    subClient: sub
}));

不过这个不太好用,总是在启动的时候报on_error的错误,不能连接redis。

但是之前用的redis共享内存中的数据的时候就没问题

回到顶部