Skip to content

Instantly share code, notes, and snippets.

@patrykorwat
Created March 30, 2013 20:20
Show Gist options
  • Select an option

  • Save patrykorwat/5278190 to your computer and use it in GitHub Desktop.

Select an option

Save patrykorwat/5278190 to your computer and use it in GitHub Desktop.
var cluster = require('cluster'),
app = require('./express-app');
var workers = {},
count = require('os').cpus().length;
function spawn(){
var worker = cluster.fork();
workers[worker.pid] = worker;
return worker;
}
if (cluster.isMaster) {
for (var i = 0; i < count; i++) {
spawn();
}
cluster.on('death', function(worker) {
console.log('worker ' + worker.pid + ' died. spawning a new process...');
delete workers[worker.pid];
spawn();
});
} else {
app.listen(process.env.PORT || 5000);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment