Add clustering bin

This commit is contained in:
Connor Peet 2015-01-05 23:04:43 -05:00
parent e26cff3718
commit 4923b8ed58
2 changed files with 28 additions and 3 deletions

19
bin/www.js Normal file
View File

@ -0,0 +1,19 @@
var cluster = require('cluster');
var cleaner = require('../modules/cleaner');
var config = require('../modules/config');
if (cluster.isMaster) {
var cores = require("os").cpus().length;
for (var i = cores; i > 0; i--) {
cluster.fork();
}
cluster.on('exit', function (worker, code, signal) {
console.error('Worker died. Rebooting a new one.');
setTimeout(cluster.fork, 100);
});
setInterval(cleaner.run, config.cleaning_interval * 1000);
} else {
require('../server.js')();
}

View File

@ -92,7 +92,13 @@ function requestHandler(req, res) {
} }
} }
http.createServer(requestHandler).listen(process.env.PORT || 3000); var boot = module.exports = function () {
http.createServer(requestHandler).listen(process.env.PORT || 3000);
};
// cleaning worker if (require.main === module) {
setInterval(clean.run, config.cleaning_interval * 1000); boot();
// cleaning worker
setInterval(clean.run, config.cleaning_interval * 1000);
}