【发布时间】:2018-04-28 08:25:47
【问题描述】:
由于集群,在我的 Node js 应用程序中,该函数执行了多次。我怎样才能只运行一次函数?其实是想运行cron作业,但是由于函数多次执行,cron执行了多次。
聚类代码: `
var numCPUs = require('os').cpus().length;
if (cluster.isMaster) {
// Fork workers.
// console.log('numCPUs--------',numCPUs);
for (var i = 0; i < numCPUs; i++) {
cluster.fork();
console.log(process.pid);
}
cluster.on('exit', function (worker, code, signal) {
// handle server crashes
console.log('worker ' + worker.process.pid + ' died');
});
} else {
console.log(cluster.worker.id);
const port = process.env.PORT || 8000;
app.listen(8000);
}
(function test() {
console.log("THIS is test");
}());
OUTPUT: 4
THIS is test
1
3
THIS is test
THIS is test
2
THIS is test
`
【问题讨论】: