[rabbitmq-discuss] Recommended python library for simple use?
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.
More information about the rabbitmq-discuss