socket.io-clusterhub

socket.io storage powered by clusterhub for multi process applications.

socket.io-clusterhub

A socket.io storage made with clusterhub. Syncs data between multi-process socket.io applications.

Usage

var cluster = require('cluster');
var numCPUs = require('os').cpus().length;
 
// store must be initialized for master/worker processes 
var store = new (require('socket.io-clusterhub'));
 
if (cluster.isMaster) {
  for (var i = 0; i < numCPUs; i++) {
    cluster.fork();
  }
 
} else {
  var io = require('socket.io').listen(3000)
  console.log('Listening on port 3000');
 
  // set the store to the socket.io-clusterhub instance 
  io.configure(function() {
    io.set('store', store);
  });
 
  io.sockets.on('connection', function(socket) {
    // use socket.io as normal 
  });
}

Install

npm install socket.io-clusterhub

Tests

Tests are written with mocha

npm test

License

MIT