[rabbitmq-discuss] Bound Queues

Tony Garnock-Jones tonyg at lshift.net
Wed Apr 14 12:13:19 BST 2010


Garrett Smith wrote:
> FWIW, the qpid server does respect the ttl message property and this
> condition is easier to manage as a result. I'm a fan of ttl as it's
> application specific (producers get to chose how long their messages
> should live) and provides a reasonable heuristic for deleting messages
> that aren't consumed in a timely manner.

And as it happens, ttl is one of the key controls of reliable delivery: in
order to achieve reliable delivery, you need to be able to bound the lifetime
of a packet in the network, so that duplicates don't outlive their
deduplication buffer entries.

I think implementing ttl is important. We could build a dumb form of it quickly
enough, where as a message is considered for delivery its ttl is checked, but
the real challenge lies in collecting expired messages while they're idle.
Per-message ttls aggravate the problem: if only it were a per *queue* ttl, it'd
be so much easier!

Tony





More information about the rabbitmq-discuss mailing list