README.md in resque-retry-0.0.1 vs README.md in resque-retry-0.0.2

- old
+ new

@@ -1,9 +1,9 @@ resque-retry ============ -A [Resque][rq] plugin. Requires Resque 1.8.0. +A [Resque][rq] plugin. Requires Resque 1.8.0 & [resque-scheduler][rqs] resque-retry provides retry, delay and exponential backoff support for resque jobs. ### Features @@ -11,14 +11,10 @@ - Redis backed retry count/limit. - Retry on all or specific exceptions. - Exponential backoff (varying the delay between retrys). - Small & Extendable - plenty of places to override retry logic/settings. -**n.b.** [resque-scheduler][rqs] is _really_ recommended if you wish to -delay between retry attempts, otherwise your workers will block -using `sleep`. - Usage / Examples ---------------- Just extend your module/class with this module, and your ready to retry! @@ -31,10 +27,11 @@ require 'require-retry' class DeliverWebHook extend Resque::Plugins::Retry + @queue = :web_hooks def self.perform(url, hook_id, hmac_key) heavy_lifting end end @@ -45,10 +42,12 @@ ### Custom Retry class DeliverWebHook extend Resque::Plugins::Retry + @queue = :web_hooks + @retry_limit = 10 @retry_delay = 120 def self.perform(url, hook_id, hmac_key) heavy_lifting @@ -65,10 +64,11 @@ Use this if you wish to vary the delay between retry attempts: class DeliverSMS extend Resque::Plugins::ExponentialBackoff + @queue = :mt_messages def self.perform(mt_id, mobile_number, message) heavy_lifting end end @@ -91,12 +91,14 @@ The default will allow a retry for any type of exception. You may change it so only specific exceptions are retried using `retry_exceptions`: class DeliverSMS extend Resque::Plugins::Retry + @queue = :mt_messages + @retry_exceptions = [NetworkError] - + def self.perform(mt_id, mobile_number, message) heavy_lifting end end @@ -125,10 +127,11 @@ Or you can define the entire key by overriding `redis_retry_key`. class DeliverSMS extend Resque::Plugins::Retry + @queue = :mt_messages def self.identifier(mt_id, mobile_number, message) "#{mobile_number}:#{mt_id}" end @@ -142,10 +145,11 @@ You may override `args_for_retry`, which is passed the current job arguments, to modify the arguments for the next retry attempt. class DeliverViaSMSC extend Resque::Plugins::Retry - + @queue = :mt_smsc_messages + # retry using the emergency SMSC. def self.args_for_retry(smsc_id, mt_message) [999, mt_message] end \ No newline at end of file