But Qpid doesn't currently support selectors, right?

Adam

On Tue, Jan 6, 2009 at 5:23 PM, Robert Greig <robert.j.gr...@gmail.com> wrote:
> 2009/1/6 Adam Chase <adam.cha...@gmail.com>:
>
>> 4) something else??  If I have the queue auto-delete, won't I lose
>> messages if the consumer that is subscribed to that work queue
>> crashes?  Put all the work in one queue and have consumers release
>> messages that they aren't responsible for, group responsibility could
>> be managed via another tool or some sort of algorithm where messages
>> are broadcasted to consumers.
>
> I would do this using message selectors. That would avoid a lot of
> queue creation and deletion.
>
> You could have two queues: one queue contains the "job descriptors"
> that gives out the ids that you are going to select on. The other
> queue (or indeed queues) would contain the messages with the id you
> are going to select on.
>
> A consumer works by reading a message (or messages) from the job
> descriptor queue. This is done within a txn that is not committed so
> that if the consumer crashes the message is automatically put back on
> the queue. Having read the job(s), in another session the consumer can
> start reading from the job queue, selecting on the job descriptor ids.
>
> This way you can scale up the number of consumers quite simply and the
> job descriptors will be spread between them.
>
> RG
>

Reply via email to