Meh*_*rsi 1 ruby rails-activejob
我想限制的数量retries
当作业使用失败ActiveJob
与Sidekiq
作为适配器.
使用Sidekiq,我可以这样做:
class LessRetryableWorker
include Sidekiq::Worker
sidekiq_options :retry => 5
def perform(...)
end
end
Run Code Online (Sandbox Code Playgroud)
Sidekiq配置不提供全局retry
配置.每个工人负责设置retry
选项.所以我想我必须在ActiveJob端实现它才能正确完成它.
Sidekiq
提供服务器级配置来处理这种情况.来自Sidekiq
ruby-doc:
Sidekiq.configure_server do |config|
config.server_middleware do |chain|
chain.add Middleware::Server::RetryJobs, :max_retries => 7
end
end
Run Code Online (Sandbox Code Playgroud)