我有一个应用程序,我想在周一至周五上午 10 点至晚上 10 点之间每 4 分钟在 Heroku(免费版本)中运行一次。我曾经使用 Digital Ocean 中的 cron 作业来执行此操作,但我正在尝试迁移到 Heroku,因为它是免费的。但这可能吗?从我所看到的一切看来,你只能在 Heroku 上每 10 分钟运行一次东西。
这是一个简单的应用程序,每 4 分钟发送一次电子邮件更新。 谢谢。
最佳答案
Heroku 没有为您提供每 4 分钟运行一次的方法。正如您所提到的,调度程序插件将为您提供的最低时间是 10 分钟。
您可以设置一个始终运行的进程,并每 4 分钟排队/处理您的任务。
正如 Garson 的评论中提到的,node-cron 可以很轻松地为您处理这个问题。
例如下面的代码:
var CronJob = require('cron').CronJob;
new CronJob('* */4 * * * *', function() {
console.log('You will see this message every 4 minute');
}, null, true, 'America/Los_Angeles');
每 4 分钟显示一次控制台消息。
您可以使用 node index.js
运行它。
因此,如果您将以下行放入 Procfile 中使用名称 cron
并部署您的应用程序,您可以执行以下操作:
heroku ps:scale cron=1
并且该过程将无限期地执行,每 4 分钟执行一次代码。
关于node.js - 是否可以每 *4 分钟* 在 Heroku 中运行一个 Node.js 应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44750275/