Files
ClassContent/历届学生/王凯/11-16/cluster.js
2024-09-27 02:06:13 +08:00

22 lines
797 B
JavaScript

var cluster = require('cluster');
var http = require('http');
var numCPUs = require('os').cpus().length;
// sudo siege -c 50 http://localhost:3000
if (cluster.isMaster) {
console.log('[master] ' + "start master...");
for (var i = 0; i < numCPUs; i++) {
cluster.fork();
}
cluster.on('listening', function (worker, address) {
console.log('[master] ' + 'listening: worker' + worker.id + ',pid:' + worker.process.pid + ', Address:' + address.address + ":" + address.port);
});
} else if (cluster.isWorker) {
console.log('[worker] ' + "start worker ..." + cluster.worker.id);
http.createServer(function (req, res) {
console.log('worker'+cluster.worker.id);
res.end('worker'+cluster.worker.id+', PID: '+process.pid);
}).listen(3000);
}