README.markdown in resque-mongo-1.4.0 vs README.markdown in resque-mongo-1.8.1

- old
+ new

@@ -5,18 +5,15 @@ library functionality has been ported (all tests pass) and the monitoring sinatra app works except the "stats" panel, although there are a lot of details that need to been taken care of. Resque-mongo uses a fairly new feature of mongo, [findAndModify()][fnr]. -findAndModify is not yet supported by the ruby mongo driver because the -command's api might change a bit. You can use a [patched version -mongo-ruby-driver][fnr-ruby] that supports the current implementation. +findAndModify that is only supported by 0.20+ version ofthe ruby mongo driver. Also, check your mongo version: 1.3.0 or higher [fnr]: http://www.mongodb.org/display/DOCS/findandmodify+Command -[fnr-ruby]: http://github.com/ctrochalakis/mongo-ruby-driver/tree/find_replace Resque ====== Resque is a Redis-backed library for creating background jobs, placing @@ -426,10 +423,14 @@ If you have a Resque config file you want evaluated just pass it to the script as the final argument: $ resque-web -p 8282 rails_root/config/initializers/resque.rb +You can also set the namespace directly using `resque-web`: + + $ resque-web -p 8282 -N myapp + ### Passenger Using Passenger? Resque ships with a `config.ru` you can use. See Phusion's guide: @@ -497,10 +498,12 @@ Installing Redis ---------------- +Resque requires Redis 0.900 or higher. + Resque uses Redis' lists for its queues. It also stores worker state data in Redis. #### Homebrew @@ -541,11 +544,14 @@ gem install redis redis-namespace yajl-ruby If you cannot install `yajl-ruby` (JRuby?), you can install the `json` gem and Resque will use it instead. +When problems arise, make sure you have the newest versions of the +`redis` and `redis-namespace` gems. + Installing Resque ----------------- ### In a Rack app, as a gem @@ -661,10 +667,21 @@ $ RAILS_ENV=production resque-web rails_root/config/initializers/resque.rb Now everyone is on the same page. +Plugins and Hooks +----------------- + +For a list of available plugins see +<http://wiki.github.com/defunkt/resque/plugins>. + +If you'd like to write your own plugin, or want to customize Resque +using hooks (such as `Resque.after_fork`), see +[docs/HOOKS.md](http://github.com/defunkt/resque/blob/master/HOOKS.md). + + Namespaces ---------- If you're running multiple, separate instances of Resque you may want to namespace the keyspaces so they do not overlap. This is not unlike @@ -692,15 +709,23 @@ Monitoring ---------- +### god + If you're using god to monitor Resque, we have provided example configs in `examples/god/`. One is for starting / stopping workers, the other is for killing workers that have been running too long. +### monit +If you're using monit, `examples/monit/resque.monit` is provided free +of charge. This is **not** used by GitHub in production, so please +send patches for any tweaks or improvements you can make to it. + + Development ----------- Want to hack on Resque? @@ -741,17 +766,20 @@ 2. Create a topic branch - `git checkout -b my_branch` 3. Push to your branch - `git push origin my_branch` 4. Create an [Issue][2] with a link to your branch 5. That's it! +You might want to checkout our [Contributing][cb] wiki page for information +on coding standards, new features, etc. + Mailing List ------------ To join the list simply send an email to <resque@librelist.com>. This will subscribe you and send you information about your subscription, -include unsubscribe information. +including unsubscribe information. The archive can be found at <http://librelist.com/browser/>. Meta @@ -776,5 +804,6 @@ [0]: http://github.com/blog/542-introducing-resque [1]: http://help.github.com/forking/ [2]: http://github.com/defunkt/resque/issues [sv]: http://semver.org/ [rs]: http://github.com/defunkt/redis-namespace +[cb]: http://wiki.github.com/defunkt/resque/contributing