定时任务为什么会执行两次,很奇怪,有没有大神知道是什么原因???
发布于 5 年前 作者 quanpf2481 5924 次浏览 来自 问答

写了一个定时任务,如下: const schedule = require(‘node-schedule’); let rule2 = new schedule.RecurrenceRule(); rule2.hour = [1,2,3,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23]; rule2.minute = [3,8,13,18,23,28,33,38,43,48,53,58]; rule2.second = 1; schedule.scheduleJob(rule2, function(){ // 每隔5分钟 lightLog.info(‘pid:’, process.pid,“定时产生数据”); require(’…/cron/GenNum.js’)(); });

每隔一段时间(时间随机)会,在执行定时任务的时候,会执行两次,请问是为什么???下面是打印的结果

image.png

14 回复

@GreyPrinceZote 那请问用什么模块来代替呢

看需求吧,node-schedule我一直都在用,不过我都是直接用cron格式写

你用了cluster?

@quanpf2481 /cron/GenNum.js 这里面是啥东西啊

@GreyPrinceZote 跟这个里面的内容有关系嘛???就是一般的任务啊

@iflet 什么意思???

@quanpf2481 用laterjs取代node-schedule

你部署两台服务器吗

当前文件被引用了两次,在schedule.scheduleJob前log一下看看

node-schedule 这个package 有bug的。。。这个我以前写过。。。

pm2 start -i 2 ?? 还是重复调用?? 仔细检查检查,我也在用,没啥问题

回到顶部