我正在尝试在Node.js应用程序中实现集群。
当我使用fork()
方法打印出在for循环内产生了多少工人时,它什么都不打印。
如果我将coreCounter
变量打印出来,它也= 0。
这是我的代码:
let cluster = require('cluster');
if (cluster.isMaster) {
let coreCounter = require('os').cpus.length;
for (let i = 0; i < coreCounter; i++) {
cluster.fork();
}
cluster.on('exit', function () {
cluster.fork();
});
} else {
require('server.js');
}
我尝试过npm install cluster和npm install os,它不起作用,如果我“需要”某些东西,我是否必须进行npm install?
答案 0 :(得分:0)
您只需要在cpus之后添加()
。
查看此处:
let cluster = require('cluster');
if (cluster.isMaster) {
let coreCounter = require('os').cpus().length;
for (let i = 0; i < coreCounter; i++) {
cluster.fork();
}
cluster.on('exit', function () {
cluster.fork();
});
} else {
//require('server.js');
console.log('walla!')
}
您不应该npm install
NodeJS核心模块。
P.S。我建议您在实施集群之前先使用NodeJS进行一些练习