如何使节点计划在Heroku中工作?

时间:2018-11-22 02:10:46

标签: node.js express heroku scheduled-tasks scheduler

我正在从“节点计划”模块运行作业。

在localhost上,一切正常,但是当我在Heroku中上传到生产环境时,效果不佳。

我已将设置-> var config中的时区更改为亚洲/耶路撒冷的TZ 但它仍然不起作用。 知道为什么吗?上载我的代码,尽管我认为这与Heroku有关,而不是代码。目前每分钟更新一次只是为了对其进行测试,有用的是每1.5小时更新一次

const schedule = require("node-schedule");
const needle = require("needle");

let j = schedule.scheduleJob("* /1 * * * *", function() {
    needle.put("https://myserver.herokuapp.com/myendpoint");
});

1 个答案:

答案 0 :(得分:1)

我通过以下代码在Heroku和Azure上成功使用了cron作业。我正在使用cron

import { CronJob } from 'cron';

  const doSomething = new CronJob(
    '0 0 * * 1', //cron time
    fnname, //replace with your function that you want to call
    null, //oncomplete
    false, //start flag
    'America/Los_Angeles',// timezone
  );
  
  doSomething.start()