Module: Sidekiq

Defined in:
lib/sidekiq/routing.rb,
lib/sidekiq/routing/mover.rb,
lib/sidekiq/routing/store.rb,
lib/sidekiq/routing/sweeper.rb,
lib/sidekiq/routing/version.rb,
lib/sidekiq/routing/auto/router.rb,
lib/sidekiq/routing/configuration.rb,
lib/sidekiq/routing/web_extension.rb,
lib/sidekiq/routing/auto/reroute_job.rb,
lib/sidekiq/routing/parked_processor.rb,
lib/sidekiq/routing/middleware/client.rb,
lib/sidekiq/routing/middleware/server.rb,
lib/sidekiq/routing/auto/configuration.rb,
lib/sidekiq/routing/auto/batch_rerouter.rb,
lib/sidekiq/routing/auto/job_duration_tracker.rb,
lib/sidekiq/routing/auto/noisy_neighbor_detector.rb

Overview

Runtime, per-job-class parking/blackhole mechanism for Sidekiq incident response.

Two modes per job class (see lib/sidekiq/CONTEXT.md and docs/routing-how-it-works.md):

- park (default, reversible): divert jobs to a worker-less parking queue.
- blackhole: drop jobs entirely (only for classes safe to lose).

State lives in a single Redis hash; the hot path reads a whole-hash snapshot refreshed at most once per cache_ttl_seconds, so per-job cost is an in-memory lookup rather than a Redis round-trip.

Defined Under Namespace

Modules: Routing