i want to use socket.io with cluster . This is what i tried but i got this error :
TypeError: RedisStore is not a constructor
const app = express()
const redis = require('redis')
var cluster = require('cluster'),
numCPUs = require('os').cpus().length;
if (cluster.isMaster) {
//master process - fork children
for (var i = 0; i < numCPUs; i++) {
cluster.fork()
}
}
else {
var RedisStore = require('redis')
, pub = redis.createClient()
, sub = redis.createClient()
, client = redis.createClient();
var io = require('socket.io').listen(5000, {
'store': new RedisStore({
redisPub: pub
, redisSub: sub
, redisClient: client
}),
});
io.sockets.on('connection', function (socket) {
// all socket.on('eventname'... things go here
});
const http = require('http')
http.createServer(app).listen(4000);
}