我有一个进程在一个文件夹中生成数据文件,每10秒钟产生一个新文件。nodeJS/asyncJS并行处理动态队列
我还有一个观察者的NodeJS,监控的目录,为新文件中来了。
const watcher = chokidar.watch(['data_folder']);
watcher.on('add', (path, stats)=>{
if (stats && stats.size > 0){
console.log(path);
//spawn child_process to do further processing
spawn_child_process_to_run(path);
}
});
新文件将被进一步用child_process处理,这可能需要相当长的时间才能完成。
问题是如何对文件进行排队,以便它们可以并行处理,而不会触及nodeJS子进程的数量限制。