559390
var cluster = require('cluster');
var http = require('http');
if (cluster.isMaster) {
var numCPUs = require('os').cpus().length;
var data = 0;
// 启动多个进程.
for (var i = 0; i < numCPUs; i++) {
//增加一个进程
var worker_process = cluster.fork();
//侦听子进程的message事件
worker_process.on('message', function(msg) {
if (msg.cmd && msg.cmd == 'notifyRequest') {
data++;
console.log('DATA VALUE : %d ', data);
}
});
}
} else {
process.send({ cmd: 'notifyRequest' });
}
如以上代码,我可能有些基础没搞清楚。 1.进程数为何与核数挂钩?如果4核,我在上面代码fork 5个 子进程,我看不到问题。 2.每个子进程监听了message,process.send我以为是发送给主进程的,为何子进程会收到.