mirror of
https://github.com/mperham/sidekiq.git
synced 2022-11-09 13:52:34 -05:00
wordsmith readme
This commit is contained in:
parent
bceacec766
commit
4ada5e7e3d
1 changed files with 9 additions and 8 deletions
17
README.md
17
README.md
|
@ -3,26 +3,28 @@ Sidekiq
|
||||||
|
|
||||||
Simple, efficient message processing for Ruby.
|
Simple, efficient message processing for Ruby.
|
||||||
|
|
||||||
|
Sidekiq uses threads to handle many messages at the same time in the
|
||||||
|
same process. It integrates tightly with Rails 3 to make background
|
||||||
|
message processing dead simple.
|
||||||
|
|
||||||
Sidekiq is compatible with Resque. It uses the exact same
|
Sidekiq is compatible with Resque. It uses the exact same
|
||||||
message format as Resque so it can integrate into an existing Resque processing farm.
|
message format as Resque so it can integrate into an existing Resque processing farm.
|
||||||
You can have Sidekiq and Resque run side-by-side at the same time and
|
You can have Sidekiq and Resque run side-by-side at the same time and
|
||||||
use the Resque client to enqueue messages in Redis to be processed by Sidekiq.
|
use the Resque client to enqueue messages in Redis to be processed by Sidekiq.
|
||||||
|
|
||||||
At the same time, Sidekiq uses multithreading so it much more memory efficient than Resque (which forks a new process for every job).
|
At the same time, Sidekiq uses multithreading so it much more memory efficient than
|
||||||
You'll find that you might need 50 200MB resque processes to peg your CPU
|
Resque (which forks a new process for every job). You'll find that you might need
|
||||||
whereas one 300MB Sidekiq process will peg the same CPU and perform the
|
50 200MB resque processes to peg your CPU whereas one 300MB Sidekiq process will peg
|
||||||
same amount of work. Please see [my blog post on Resque's memory
|
the same CPU and perform the same amount of work. Please see [my blog post on Resque's memory
|
||||||
efficiency](http://blog.carbonfive.com/2011/09/16/improving-resques-memory-efficiency/)
|
efficiency](http://blog.carbonfive.com/2011/09/16/improving-resques-memory-efficiency/)
|
||||||
and how I was able to shrink a Carbon Five client's resque processing farm
|
and how I was able to shrink a Carbon Five client's resque processing farm
|
||||||
from 9 machines to 1 machine.
|
from 9 machines to 1 machine.
|
||||||
|
|
||||||
In sum, if your jobs are well-behaved and threadsafe, Sidekiq is probably a good replacement for Resque. If your jobs are not thread-safe or they leak memory, you may want to continue using Resque, because its forking model gives you more protection.
|
|
||||||
|
|
||||||
|
|
||||||
Requirements
|
Requirements
|
||||||
-----------------
|
-----------------
|
||||||
|
|
||||||
I test on Ruby 1.9.3 and JRuby 1.6.5 in 1.9 mode. Other versions/VMs are
|
I test on Ruby 1.9.3 and JRuby 1.6.x in 1.9 mode. Other versions/VMs are
|
||||||
untested but I will do my best to support them. Ruby 1.8 is not supported.
|
untested but I will do my best to support them. Ruby 1.8 is not supported.
|
||||||
|
|
||||||
|
|
||||||
|
@ -57,4 +59,3 @@ Author
|
||||||
-----------------
|
-----------------
|
||||||
|
|
||||||
Mike Perham, [@mperham](https://twitter.com/mperham), [http://mikeperham.com](http://mikeperham.com)
|
Mike Perham, [@mperham](https://twitter.com/mperham), [http://mikeperham.com](http://mikeperham.com)
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue