使用node.js群集模块,可以直接获取工作进程的ID。
https://nodejs.org/api/cluster.html
那将是:
cluster.on('fork', function (worker) {
console.log('A worker', worker.id, 'was forked.');
});
但是如何从工人本身获得工人的id
?为什么当集群分叉工作时,集群模块不会给worker一个id?
我是否真的必须从主进程发送它的集群ID?
我正在寻找类似于:
的东西 process.id
(与process.pid相反)
或
process.worker.id
无论如何,我无法弄清楚工人身份的内容是什么。
答案 0 :(得分:21)
var cluster = require('cluster');
if (cluster.isMaster) {
console.log('I am master');
cluster.fork();
cluster.fork();
} else if (cluster.isWorker) {
console.log('I am worker #' + cluster.worker.id);
}
,如{{3}}