首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Bull MQ可重复作业未触发

Bull MQ可重复作业未触发
EN

Stack Overflow用户
提问于 2021-09-16 15:49:10
回答 1查看 600关注 0票数 2

这个问题是这个主题Repeatable jobs not getting triggered at given cron timing in Bull的续篇

我也面临着同样的问题。我应该如何指定时区?我尝试指定为repeat:{ cron:'* 7 14 *',tz:‘欧洲/柏林’}

这意味着在德国时区14:07触发作业。虽然作业在队列中列出,但作业不会被触发。

我也尝试重复:{ cron:'* 50 15 *',offset: datetime.getTimezoneOffset(),tz:‘欧洲/柏林’}

EN

回答 1

Stack Overflow用户

发布于 2021-09-16 20:26:59

我终于想出了解决办法。

需要注意的一件事是,我还没有初始化Queuescheduler实例。当然,时区也起着至关重要的作用。但是如果没有Queuescheduler实例(与队列同名),作业就不会被添加到队列中。Queuescheduler实例充当记账器。还要注意一个更重要的参数"limit“。如果不将限制设置为1,则在特定时间安排的作业将被触发无限次。

例如:要在德国时间每天22:30运行作业,配置将如下所示:

代码语言:javascript
复制
    repeat: { 
        cron: '* 30 22 * * *',
        offset: datetime.getTimezoneOffset(),
        tz: 'Europe/Berlin',
        limit: 1
    }

参考:https://docs.bullmq.io/guide/queuescheduler在上面的链接中,文档清楚地提到了队列调度程序实例完成了作业的记账工作。

在这个link - https://docs.bullmq.io/guide/jobs/repeatable中,文档特别警告我们要确保实例化一个队列调度程序实例。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69211517

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档