2012-08-07 16:01:34 -04:00
Sidekiq
2012-01-21 19:42:21 -05:00
==============
2012-01-16 18:17:42 -05:00
2015-02-18 19:32:12 -05:00
[![Gem Version ](https://badge.fury.io/rb/sidekiq.svg )](https://rubygems.org/gems/sidekiq)
[![Code Climate ](https://codeclimate.com/github/mperham/sidekiq.svg )](https://codeclimate.com/github/mperham/sidekiq)
[![Build Status ](https://travis-ci.org/mperham/sidekiq.svg )](https://travis-ci.org/mperham/sidekiq)
[![Gitter Chat ](https://badges.gitter.im/mperham/sidekiq.svg )](https://gitter.im/mperham/sidekiq)
2013-03-11 21:40:11 -04:00
2012-08-07 16:01:34 -04:00
2013-06-26 00:55:51 -04:00
Simple, efficient background processing for Ruby.
2012-01-21 19:42:21 -05:00
2013-06-26 00:55:51 -04:00
Sidekiq uses threads to handle many jobs at the same time in the
2012-08-31 00:02:49 -04:00
same process. It does not require Rails but will integrate tightly with
2013-09-22 17:24:23 -04:00
Rails 3/4 to make background processing dead simple.
2012-04-05 22:20:24 -04:00
2012-03-26 09:26:05 -04:00
Sidekiq is compatible with Resque. It uses the exact same
2012-02-05 10:55:18 -05:00
message format as Resque so it can integrate into an existing Resque processing farm.
2012-01-21 19:42:21 -05:00
You can have Sidekiq and Resque run side-by-side at the same time and
2013-06-26 00:55:51 -04:00
use the Resque client to enqueue jobs in Redis to be processed by Sidekiq.
2012-01-21 19:42:21 -05:00
2012-05-13 23:50:25 -04:00
At the same time, Sidekiq uses multithreading so it is much more memory efficient than
2012-04-05 22:20:24 -04:00
Resque (which forks a new process for every job). You'll find that you might need
2014-03-09 17:59:55 -04:00
10 200MB resque processes to peg your CPU whereas one 300MB Sidekiq process will peg
2013-04-09 18:25:15 -04:00
the same CPU and perform the same amount of work.
2012-01-21 19:42:21 -05:00
Requirements
-----------------
2015-01-09 13:46:45 -05:00
I test with the latest MRI (2.2, 2.1 and 2.0) and JRuby versions (1.7). Other versions/VMs
2014-05-05 12:31:19 -04:00
are untested but might work fine. MRI 1.9 is no longer supported.
2013-09-22 17:24:23 -04:00
2014-09-21 15:48:35 -04:00
All Rails releases starting from 3.2 are officially supported.
2012-01-21 19:42:21 -05:00
2013-05-29 07:55:00 -04:00
Redis 2.4 or greater is required.
2012-07-25 21:41:05 -04:00
2012-01-21 19:42:21 -05:00
Installation
-----------------
2012-06-26 20:52:06 -04:00
gem install sidekiq
2012-01-21 19:42:21 -05:00
2012-01-26 00:12:18 -05:00
Getting Started
2012-01-21 19:42:21 -05:00
-----------------
2015-01-07 16:33:26 -05:00
See the [sidekiq home page ](http://sidekiq.org ) for the simple 3-step process.
2015-02-18 19:32:12 -05:00
You can watch [Railscast #366 ](http://railscasts.com/episodes/366-sidekiq ) to see Sidekiq in action. If you do everything right, you should see this:
2013-03-16 18:31:06 -04:00
![Web UI ](https://github.com/mperham/sidekiq/raw/master/examples/web-ui.png )
2012-01-21 19:42:21 -05:00
2013-04-09 18:25:15 -04:00
Want to Upgrade?
2013-04-08 11:33:37 -04:00
-------------------
2015-08-17 18:31:11 -04:00
I also sell Sidekiq Pro and Sidekiq Enterprise, extensions to Sidekiq which provide more
features, a commercial-friendly license and allow you to support high
2013-04-08 11:33:37 -04:00
quality open source development all at the same time. Please see the
2015-08-17 18:31:11 -04:00
[Sidekiq ](http://sidekiq.org/ ) homepage for more detail.
2013-04-08 11:33:37 -04:00
2012-01-21 19:42:21 -05:00
2012-01-24 21:07:18 -05:00
More Information
-----------------
2013-11-30 14:56:28 -05:00
Please see the [sidekiq wiki ](https://github.com/mperham/sidekiq/wiki ) for the official documentation.
2015-02-04 18:02:08 -05:00
[mperham/sidekiq on Gitter ](https://gitter.im/mperham/sidekiq ) is dedicated to this project,
2014-07-15 00:08:54 -04:00
but bug reports or feature requests suggestions should still go through [issues on Github ](https://github.com/mperham/sidekiq/issues ). Release announcements are made to the [@sidekiq ](https://twitter.com/sidekiq ) Twitter account.
2012-01-24 21:07:18 -05:00
2014-07-15 00:08:54 -04:00
You may also find useful a [Google Group ](https://groups.google.com/forum/#!forum/sidekiq ) dedicated to Sidekiq discussion and [a Sidekiq tag ](https://stackoverflow.com/questions/tagged/sidekiq ) on Stack Overflow.
2012-06-19 15:26:36 -04:00
2012-01-24 21:07:18 -05:00
2012-08-02 12:01:56 -04:00
Problems?
-----------------
**Please do not directly email any Sidekiq committers with questions or problems.** A community is best served when discussions are held in public.
2015-02-04 18:02:08 -05:00
If you have a problem, please review the [FAQ ](https://github.com/mperham/sidekiq/wiki/FAQ ) and [Troubleshooting ](https://github.com/mperham/sidekiq/wiki/Problems-and-Troubleshooting ) wiki pages. Searching the issues for your problem is also a good idea. If that doesn't help, feel free to email the Sidekiq mailing list, chat in Gitter, or open a new issue.
2012-08-08 19:08:05 -04:00
The mailing list is the preferred place to ask questions on usage. If you are encountering what you think is a bug, please open an issue.
2012-08-02 12:01:56 -04:00
2014-04-18 22:59:44 -04:00
Thanks
-----------------
Sidekiq stays fast by using the [JProfiler java profiler ](http://www.ej-technologies.com/products/jprofiler/overview.html ) to find and fix
performance problems on JRuby. Unfortunately MRI does not have good profile tooling.
2012-01-24 22:44:57 -05:00
License
-----------------
2013-04-15 12:48:12 -04:00
Please see [LICENSE ](https://github.com/mperham/sidekiq/blob/master/LICENSE ) for licensing details.
2012-01-24 22:44:57 -05:00
2012-01-21 19:42:21 -05:00
Author
-----------------
2015-01-07 16:33:26 -05:00
Mike Perham, [@mperham ](https://twitter.com/mperham ) / [@sidekiq ](https://twitter.com/sidekiq ), [http://www.mikeperham.com ](http://www.mikeperham.com ) / [http://www.contribsys.com ](http://www.contribsys.com )