創建sidekiq工人爲以下和exec它Sidekiq無死角的工作中發現
require 'sidekiq'
class HardWorker
include Sidekiq::Worker
sidekiq_options :queue => 'crawler'
def perform(name, count)
logger.info "#{name}: #{count}"
puts 'Doing hard work'
puts 1/0
end
end
然後和排隊的工作通過運行此代碼:
Sidekiq::Client.push({'class' => 'HardWorker', 'queue' => 'crawler', 'args' => ['name 1', 1], 'retry' => 1})
當然,sidekiq工人將拋出由於1/0異常。但經過一次重試,我沒有看到這份工作在sidekiq web ui的死氣沉沉的工作中。
所以任何人都可以解釋我或爲此提供任何想法。
感謝
來自wiki:[最佳實踐](https://github.com/mperham/sidekiq/wiki/Error-Handling#best-practices) Sidekiq在嘗試運行25次後會將作業移至死鎖隊列。不是在那之前。 – Vinay 2014-09-01 13:49:47
Vinay,當重試耗盡時,Sidekiq會將其移至DJQ。他明確地配置它只使用1次重試。 – 2014-09-02 04:07:41
sidekiq日誌說什麼? – 2014-09-02 04:09:54