你能改变delayed_job工作者的轮询时间间隔(5秒)吗?

时间:2011-03-18 11:02:16

标签: ruby-on-rails-3 delayed-job

延迟工作很棒,但我想更改频率(每2秒)以满足我的特殊需求。

是否有配置或硬编码可以随时更改?

3 个答案:

答案 0 :(得分:14)

使用DJ 3.0,您可以将其添加到config/initializers/delayed_job_config.rb文件中:

Delayed::Worker.sleep_delay = 2

答案 1 :(得分:1)

尝试设置

Delayed::Worker.const_set("SLEEP", 2)

config/initializers/delayed_job_config.rb文件中。

答案 2 :(得分:0)

当然,只需转到RAILS_ROOT / vendor / plugins / delayed_job / lib / delayed / worker.rb,找行

self.sleep_delay = 5

并将其更改为

self.sleep_delay = 2

或者你想要的任何东西

在早期版本的DJ上,我将其设置为0.1,以便队列中的作业几乎立即被拾取处理,并且工作正常。