我在哪里放置resque-retry故障后端代码?

Mat*_*ins 5 ruby-on-rails resque ruby-on-rails-3 resque-retry

resque重试执行时,宝石的README讨论改变失败的后端实现.

MultipleWithRetrySuppression 是一个多重故障后端,具有重试抑制功能.

这是一个使用Redis故障后端的示例:

require 'resque-retry'
require 'resque/failure/redis'

# require your jobs & application code.

Resque::Failure::MultipleWithRetrySuppression.classes = [Resque::Failure::Redis]
Resque::Failure.backend = Resque::Failure::MultipleWithRetrySuppression
Run Code Online (Sandbox Code Playgroud)

如果作业失败,但可以并且将重试,则失败详细信息将不会记录在Redis失败队列中(通过resque-web可见).

如果作业失败,但不能或不会重试,则失败将记录在Redis失败的队列中,就像正常失败(没有重试)那样.

我不确定我的Rails应用程序中的代码应该去哪里.我应该将它放入任何随机初始化文件中,例如config/initializers/resque.rb?或者我的应用程序中还有其他地方应该去哪里?文件不清楚.

Mat*_*ins 4

看起来初始化程序是最好的选择。接受这是最好的答案,除非有人提出更好的建议。