如何在sidekiq中正确处理作业失败

时间:2015-09-23 12:53:06

标签: ruby-on-rails ruby sidekiq

我有一个应用程序对db数据进行一些处理,有时我在两个线程之间有乐观的并发错误。我该如何处理sidekiq?

现在我抛出异常以使作业失败并让sidekiq稍后重试,但也许它不是最佳的?

还有其他方法可以更优雅地使工作失败吗?

干杯

1 个答案:

答案 0 :(得分:0)

此方法是正常的解决方案,您可能想要做的唯一事情是更新重试时间。只需添加到您的员工。

sidekiq_retry_in do |count|
  10 * (count + 1) # (i.e. 10, 20, 30, 40)
end

sidekiq docs中的更多信息:https://github.com/mperham/sidekiq/wiki/Error-Handling