【发布时间】:2015-07-24 02:44:08
【问题描述】:
我有一个进行标准数据绑定调用的站点,但也有一些 CPU 密集型任务,每天运行几次,主要由管理员执行。
这些任务包括从数据库中获取数据、运行一些耗时的不同算法,然后重新上传数据。在不阻塞事件循环的情况下进行这些调用并让它们运行的最佳方法是什么?
我绝对希望将计算保留在服务器上,这样网络工作者就不会在这里工作。一个子进程在这里就足够了吗?或者我应该在后台运行一个单独的线程来处理所有/api/admin 调用?
【问题讨论】:
-
“这里有一个子进程就够了吗”可能。
-
为什么不使用github.com/ncb000gt/node-cron 或npmjs.com/package/node-cron-jobs 开始它。这样它就不会干扰您的 http 线程。
-
我最终会将一半的管理员调用转移到 cron 作业,但仍有一半的调用需要全天手动调用。手动立即运行 cron 作业会很好吗?
标签: node.js multithreading express child-process