Why Sidekiq - rselk/sidekiq GitHub Wiki
There's a lot of systems which allow you to process things asynchronously. Why choose Sidekiq?
Performance
Being multi-threaded, a Sidekiq process is much faster than other systems which are single threaded.
Additionally you'll find that Sidekiq's Redis datastore can deliver thousands of jobs per second in aggregate. The biggest Sidekiq user I'm aware of processes ~2000 jobs/sec or 150 million jobs per day with a single Redis instance.
Simplicity
Sidekiq's design ethos is the same as Rails's: convention over configuration and as developer friendly as possible. It requires no configuration at all to work well out of the box.
Support
Open source libraries come and go. Maintainers can run out of steam when constantly answering the same basic questions, dealing with upset users or fixing issues month after month for free, leading to unmaintained projects. Sidekiq is different because it has a business model which provides me income, Sidekiq Pro. I provide the best product and support I can so that Sidekiq Pro will sell well for the foreseeable future. Sidekiq is two years old now and I still try to answer issues within hours, not days.
Features, features, features
Sidekiq comes with a big set of well-integrated features necessary for real-world production systems, including:
- Error retry with exponential back-off
- Management UI (localized in 13 languages!)
- Programmatic API
- Scheduled Jobs
- Middleware Extensions