延迟工作的神秘运行时间

时间:2015-12-04 08:18:57

标签: ruby-on-rails delayed-job

我在我的Rails应用上使用delayed_job。这是我的代码:

run_at = 4.hours.from_now
# run_at is actually a calculation according to timezone and other stuff
MyModel.delay(run_at: run_at).create(some_params)
神秘地说,昨天晚上,我的工作直接开始了。这意味着两件事:

  1. run_at基本上是now或过去。
  2. DelayedJob模特确实做了延迟。
  3. 我已经检查了3次计算。 run_at昨天晚上不等于now

    这个问题昨天在同一个小时左右发生了4次。 实际上,这是2次2次延迟任务。

    仅供参考:昨天晚上我没有重启我的服务器。

    DelayedJob是否有可能挤压我的跑步时间?

    修改 我检查了我的数据。我已经存储了所谓的起始工作的确切时间。它是在过去..我的错误。

1 个答案:

答案 0 :(得分:1)

我的不好,这个任务应该在过去运行(run_at< now)。这就是它立即开始的原因。