class Sidekiq::Congestion::Limiter

Public Instance Methods

call(worker, job, queue) { || ... } click to toggle source
# File lib/sidekiq/congestion/limiter.rb, line 4
def call(worker, job, queue, &block)
  request = Sidekiq::Congestion::Request.new worker, job, queue
  request.enabled? ? handle(request, block) : yield
end
handle(request, block) click to toggle source
# File lib/sidekiq/congestion/limiter.rb, line 9
def handle(request, block)
  if request.allowed?
    block.call
  elsif request.reschedule?
    request.reschedule!
  else
    # cancel request
  end
end