如何从父thant中产生单个工作实例被多次产生?

时间:2019-11-08 13:29:34

标签: node.js

我有一个服务器和一个刮板。服务器生成刮板,但是根据机器核心数量,pm2会多次生成服务器。我希望服务器产生多次,但只执行一个scraper实例。这可能吗?

// index.js (this should be forked multiple times)
const server = http.createServer(handler);
require('./scraper'); // this shoud only be forked once

1 个答案:

答案 0 :(得分:0)

肯定需要某种公共位置来存储启动信息。文件系统,套接字,内存等

function runOnce(fn) {
  const http = require('http');
  http.createServer()
    .on('error', _=> console.log('skip'))
    .listen(9999, _=> fn() && console.log('run'));
}

runOnce(_ => require('./scraper'));