resque-retry gem的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
如果作业失败,但可以并且重试,则失败详细信息将不会记录在Redis失败队列中(通过resque-web可见)。
如果作业失败,但不能或不会重试,则失败将记录在Redis失败队列中,就像正常失败一样(不重试)会。
我不确定我的Rails应用程序中的代码应该去哪里。我应该将它放入任何随机初始化文件中,例如config/initializers/resque.rb
?或者我的应用程序中还有其他地方应该去哪里?文件不清楚。
答案 0 :(得分:4)
看起来初始化程序是最好的选择。除非有人提出更好的建议,否则接受这个作为最佳答案。