[rabbitmq-discuss] Tasks within Transactions using RabbitMQ

Tony Garnock-Jones tonygarnockjones+rabbitmq at gmail.com
Mon Dec 19 14:56:55 GMT 2011

Hi all,

I've written up a blog post on an approach to getting similar functionality
to Google AppEngine's Transactional Task Queue, using RabbitMQ:


Here are the opening paragraphs:

In a discussion of moving from Google AppEngine to EC2, a participant
> mentioned that the only "odd" GAE service he made use of was transactional
> task queues, and that there was no direct analogue of this service in other
> queueing systems.
> Here's one way of building a transactional task queue using RabbitMQ and
> your favourite SQL database.
>    - a table in the database will hold pending tasks
>    - messages going through RabbitMQ will inform workers of the arrival
>    of new tasks
>    - the available tasks will be load-balanced between n workers
>    - a "cleaner" process makes sure all tasks are eventually run and that
>    failed tasks are eventually detected
> In this article, I'll spell out the requirements for the system, and
> discuss the details of the database tables, RabbitMQ queues, and daemon
> processes required. I'll then evaluate the solution presented in terms of
> the requirements, and conclude by discussing a few variations on the
> solution that might be worth exploring.

Tony Garnock-Jones
tonygarnockjones at gmail.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rabbitmq.com/pipermail/rabbitmq-discuss/attachments/20111219/c814ec6a/attachment.htm>

More information about the rabbitmq-discuss mailing list