NodeJs 在多个节点上调度作业

Vik*_*ari 6 scheduler scheduled-tasks node.js

我有两个 nodeJs 服务器在负载均衡器后面运行。我有一些计划作业,我只想以分布式方式在两个实例中的任何一个上运行一次。

我应该使用哪个模块?node-quartz( https://www.npmjs.com/package/node-quartz ) 对此有用吗?

Tua*_*ran 0

我以前没有这样做过,但我可以看到自己这样做。

  • 使用 Node.js 的任何调度程序库。

  • 为了实现你的目标,我会使用redis进行分布式锁。在运行任何计划的作业之前,工作线程/节点必须获得锁;做好工作;并在完成作业(或出错时)时释放 / ack() 。