sneakers-retry (rubygems): A small modification of Sneaker's built-in Maxretry class has the exact same logic, except you can use RabbitMQ's shovel plugin to manually re-enqueue the messages which failed all of their retries 
Keywords: rabbitmq|sneakers