freeCodeCamp/cluster_app.js

28 lines
469 B
JavaScript
Executable File

/**
* Module dependencies.
*/
var os = require('os');
var cluster = require('cluster');
/**
* Cluster setup.
*/
// Setup the cluster to use app.js
cluster.setupMaster({
exec: 'app.js'
});
// Listen for dying workers
cluster.on('exit', function(worker) {
console.log('Worker ' + worker.id + ' died');
// Replace the dead worker
cluster.fork();
});
// Fork a worker for each available CPU
for (var i = 0; i < os.cpus().length; i++) {
cluster.fork();
}