Javascript 试图在不同的时间运行多个kue作业,但它们同时启动

Javascript 试图在不同的时间运行多个kue作业,但它们同时启动,javascript,node.js,scheduled-tasks,kue,Javascript,Node.js,Scheduled Tasks,Kue,我试图在不同的时间表上运行两个不同的作业,请参见下面的代码ex。出于某种原因,应该在每天晚上11点运行一次的作业在其他作业每次运行时都会运行。当我期望他们跑的时候,我如何让他们跑?谢谢你的帮助 const kue = require('kue-scheduler'); const Queue = kue.createQueue(); const jobOneSchedule = '0 0 23 * * *'; const jobTwoSchedule = '0 0 0/1 * * *'; le

我试图在不同的时间表上运行两个不同的作业,请参见下面的代码ex。出于某种原因,应该在每天晚上11点运行一次的作业在其他作业每次运行时都会运行。当我期望他们跑的时候,我如何让他们跑?谢谢你的帮助

const kue = require('kue-scheduler');
const Queue = kue.createQueue();
const jobOneSchedule = '0 0 23 * * *';
const jobTwoSchedule = '0 0 0/1 * * *';

let job1 = Queue.createJob('doJobOne')
                .priority('low')
                .unique('unique_one')
                .removeOnComplete('true');


let job2 = Queue.createJob('doJobTwo')
                .priority('high')
                .unique('unique_two')
                .removeOnComplete('true');


Queue.every(jobOneSchedule, job1);
Queue.every(jobTwoSchedule, job2);


Queue.process('doJobOne', function(job, done){
    console.log('Job one done');
    done();
});

Queue.process('doJobTwo', function(job, done){
    console.log('Job two through');
    done();
});
变通办法 作为一种解决方法,我必须删除所有job2内容,并按如下方式运行它:

// Do job2 stuff every hour (3.6e6 ms)
const jobTwoInterval = 3.6e6;
setInterval(function(){
    console.log('Job two through');
}, jobTwoInterval);
在我这边工作很好

  const jobOneSchedule = '39 11 * * *';   //Runs at 11:39 pm
  const jobTwoSchedule = '*/20 * * * * *';  //Run every twenty seconds
你能试试刷新redis然后再试一次吗

setInterval的缺点是,如果服务器重新启动,您的作业将永远不会执行,因为interval将被清除