如何让Delayed_Job任务因"执行过期"而失败

AKW*_*KWF 6 ruby-on-rails delayed-job

我认为,因为它是一个后台进程,所以不会有任何超时.我使用delayed_job在后台运行报告.非常大,长时间运行的报告因此消息而失败.

我正在使用Phusion Passenger在Apache2上运行Rails 2.3.5.

Bre*_*der 11

来自github上的delayed_jobs faq wiki页面:

# config/initializers/delayed_job_config.rb
Delayed::Job.destroy_failed_jobs = false
silence_warnings do
  Delayed::Job.const_set("MAX_ATTEMPTS", 3)
  Delayed::Job.const_set("MAX_RUN_TIME", 5.minutes)
end
Run Code Online (Sandbox Code Playgroud)

您正在寻求增加MAX_RUN_TIME.默认值为4小时,因此您可能希望将其设置为类似6.hours或更长的时间.它应该是您认为工作应该采用的最长时间,但这显然是应用/工作特定的,您可能知道可接受的最长时间是什么.