[rabbitmq-discuss] Recommended python library for simple use?

Allen Fowler allen.fowler at yahoo.com
Fri Sep 4 01:14:58 BST 2009


> > 1) Is it hard to set up RabbitMQ for single machine use?
> I wouldn't have thought so. There are packages for a variety of
> penguins as well as windows. It's quite a straightforward process.

Planning to use Ubuntu Server, so I will use their packages.

More concerned with configuration, than installation.  Is it a big deal?

> > 2) I see there are a few AMQP projects for python.  What should I use?
> A lot of people on this list seem to prefer Barry's library for it's
> simplicity but YMMV. Some people prefer txAMQP because they're running
> stuff in a reactor.

That's ampqlib, right?


> > Each task unit is less than 1kb and I don't intend for the queue to be allowed 
> to grow than ~200 task units long.  At that point, I have the task producer set 
> to pause and wait until the queue goes down.
> Without a back channel, how is the producer going to know about the queue depth?

The one-and-only producer, I had thought, would do something like sleep for a few seconds, query the queue size, and if it's getting low, generate a new block of tasks.

Is this not advisable in RabbitMQ based systems?

> > I do want to be able to flag certain tasks as "dependant", so that a certain 
> task must be marked "done" before it's dependent can can run.
> That sounds quite application specific. Certainly you could set up
> routing rules to put different classes of task into different queues,
> but that may be too coarse grained for what you need.


Basically most tasks only need to be done in a "loose FIFO" manner.   Some tasks will wind up sharing a particular attribute, and so their relative order must be followed.  The pool of possible values for this attribute is unlimited, but for any given task block, about 1/3 will share the attribute value with at least one other task.

Any ideas?

Thank you,


More information about the rabbitmq-discuss mailing list