繁体   English   中英

节点计划仅运行一次

[英]node-schedule only running once

我正在运行MEAN堆栈应用程序,并且正在为重复发生的任务的正确实现而苦苦挣扎。 我已将以下行添加到我的server.js文件中:

require('./node_scripts/schedule/node_sched.js');  

然后,它指向此文件:

var schedule = require('node-schedule');

var rule = new schedule.RecurrenceRule();
rule.minute = 57;

var notify = schedule.scheduleJob(rule, function(){
    var notifyScript = require('../arrival_checker/arrival_main.js');
    console.log('Ran notify script ' + new Date());
    notifyScript;
});

该脚本一次成功运行一次,但再也没有运行过。 这是我的问题:

  1. 这是在MEAN堆栈环境中执行计划任务的正确方法吗?
  2. 我该如何更改此代码,使其每小时运行一次?

我认为以下代码将为您提供帮助。 下面的代码将每隔00:01(午夜)执行一次。

 var schedule = require('node-schedule');
 schedule.scheduleJob('1 0 * * *', function () {
       console.log('Ran notify script ' + new Date());
 })

您还可以创建自己的规则来指定执行时间:

var yourRule = {hour: 0, minute: 0, dayOfWeek: 1, month: [0, 3, 6, 9]};
var scheduleFunction = schedule.scheduleJob(yourRule, function(){
  console.log('will execute every quarter'));
});

链接以制定您自己的规则: https : //www.npmjs.com/package/node-schedule

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM