首页 > 解决方案 > Sidekiq-scheduler - 为什么每天的 cron 工作会跳过几天?

问题描述

使用 sidekiq-scheduler 安排的任务不会按应有的方式每天运行。cron 中有 6 个变量,我的印象是这个任务应该在每天 00:05 运行。“最后一次”运行是两天前(提供屏幕截图)。此任务的时间表:

reminder_queuer:
  cron: '0 5 0 * * *'
  class: ReminderQueuer

Procfile 包含以下内容,.yml 有时间表。

worker: bundle exec sidekiq -C config/sidekiq.yml

该任务大部分时间都在运行,但我遇到了这个,因为它最近错过了更新。其他预定的同样有同样的问题。此任务将每周的电子邮件排入队列,并且上周运行良好。

我确实有一项任务的0 0 */12 * * *时间表没有问题(每 12 小时运行一次)。

在 sidekiq 网络中看起来像这样

标签: ruby-on-railscronsidekiq

解决方案


如果你想在每天 00:05 运行你的 cron,在我看来它应该如下所示:

cron: '5 0 * * *'

5 means minutes, 0 means hour and stars mean everyday

推荐阅读