mperham/sidekiq — pull request #1598 by jonhyman (2014-03-24 17:25:17+00:00)
Title: Lets you inject in a RedisConnect into Sidekiq::Client so you can push j...

...obs to different Redis instances in the same application.

---
We're causing 100% CPU utilization in our Sidekiq Redis instance during peak load, sometimes we're handling over 8,000 jobs/second. We're using dedicated hardware and a beefy machine and the only purpose of the instance is Sidekiq, but there's only so much a single core can do.

We're going to partition out our Sidekiq and start pushing some queues to different instances. This pull lets you at least construct your own `Sidekiq::Client` that can point at any `RedisConnection`. A subsequent modification would to do something like `MyJob.with(:connection => conn).perform_async()` which could then dynamically handle this, but for now this will certainly suffice.