“Express.js集群”的版本间的差异
来自Dennis的知识库
Dennis zhuang(讨论 | 贡献) |
Dennis zhuang(讨论 | 贡献) |
||
第11行: | 第11行: | ||
// Fork workers. | // Fork workers. | ||
for (var i = 0; i < numCPUs; i++) { | for (var i = 0; i < numCPUs; i++) { | ||
− | + | cluster.fork(); | |
} | } | ||
cluster.on('exit', function(worker, code, signal) { | cluster.on('exit', function(worker, code, signal) { | ||
− | + | console.log('worker ' + worker.process.pid + ' died'); | |
}); | }); | ||
} else { | } else { | ||
第21行: | 第21行: | ||
// In this case its a HTTP server | // In this case its a HTTP server | ||
http.createServer(app).listen(app.get('port'), function(){ | http.createServer(app).listen(app.get('port'), function(){ | ||
− | + | console.log("Express server listening on port " + app.get('port')); | |
}); | }); | ||
} | } |
2012年12月4日 (二) 06:48的版本
express.js利用cluster模块做集群
var express = require('express') , http = require('http') , cluster = require('cluster') , http = require('http') , numCPUs = require('os').cpus().length , path = require('path');
if (cluster.isMaster) { // Fork workers. for (var i = 0; i < numCPUs; i++) { cluster.fork();
}
cluster.on('exit', function(worker, code, signal) { console.log('worker ' + worker.process.pid + ' died');
});
} else { // Workers can share any TCP connection // In this case its a HTTP server http.createServer(app).listen(app.get('port'), function(){ console.log("Express server listening on port " + app.get('port'));
});
}