← Back to team overview

launchpad-dev team mailing list archive

Re: generic job queue cronjob?

 

> On 09/21/2010 09:32 PM, Steve McInerney wrote:
>> On Tue, 2010-09-21 at 08:51 -0400, Aaron Bentley wrote:
>>> Okay. From what you said, it sounded like you wanted to use RabbitMQ,
>>> and not something else, such as Gearman's built-in messaging, for
>>> dispatching tasks.
>>
>> fwiw, rabbitmq is in use by both LS and U1, if you're unaware?
>
> Yes, I am aware, and that's certainly a factor we should consider when
> choosing our approach.  But we shouldn't let it interfere with choosing
> the best approach for us.

After reading this thread I still am not understanding why the
hesitation around RabbitMQ (and I am pleased that you are pushing for
the "best approach"). There are considerable costs such as integration
with monitoring/backup/security systems to operating and maintaining
each new piece of technology in our stack, and one of the reasons that
RabbitMQ was selected as a preferred technology at Canonical was
because we were convinced that it was flexible enough to handle the
varying needs from different product groups and we could get training
and support on it (something that was not true of gearman at least at
that time). If there is some capability missing from RabbitMQ core,
there is a full time development team (recently acquired by
VMWare/SpringSource) who are very interested in hearing feedback and
feature requests from us.

RabbitMQ has been promoted to "main" in Ubuntu 10.04 Lucid, which
means it is officially supported by Canonical for years to come, and I
will be backporting RabbitMQ 2.0.1 to lucid-backports as soon as the
11.04 repositories open up next month - this version is noteworthy
because it adds support for AMQP 0.9.1. RabbitMQ supports not only
AMQP, but Stomp, JSON/RPC, SMTP, XMPP, PubSubHubBub, and more.
http://www.rabbitmq.com/blog/2010/08/27/growing-up/

What does Launchpad need to do that is not handled by RabbitMQ? Are
there other libraries on top of RabbitMQ such as
http://celeryq.org/docs/index.html that we should adopt in order to
make it easier to use Rabbit? I'm keen to help make sure that the
Launchpad needs are met elegantly and that an MQ system can be rapidly
deployed for all the developers to build upon - I was tearing my hair
out over the lack of a queueing system 2 years ago when I last worked
on Launchpad so it's long overdue :)
-- 
Elliot Murphy | https://launchpad.net/~statik/



Follow ups

References