Difference between node-cron module and Heroku Scheduler
我在Heroku上运行了一个节点应用程序。
我希望某些作业每隔几秒钟定期运行一次,以便将数据从外部MySQL数据库获取到我的MongoDB。
经过广泛的搜索,我发现了很多实现此目的的方法。
我的问题是我无法完全理解cron-module和Heroku Scheduler之间的区别以及优缺点。
我发现了一些差异:
如果我使用Heroku Scheduler,则至少要限制10分钟。
如果使用node-cron模块,则将在主index.js文件中运行它,并且如果需要的话,它将每隔几秒钟运行一次。
但是运行多个测功机时,这两种方法会受到什么影响?
在这种情况下,脚本将重复运行多次?
node-cron将在您当前正在运行的应用程序实例中指定的时间运行该功能。您可以更加精确地安排这些时间。
Heroku Scheduler将启动一个新的dyno并运行该功能。功能完成后,测功机将旋转(即关闭)。您可能会以较低的精度安排这些时间。
如果您使用多个测功机:
- Heroku Scheduler将不会运行重复的命令。
- node-cron将在被调用的每个实例上运行(可能每个实例),因此将运行并发(重复)函数。