[rabbitmq-discuss] Schedule Messages
Michael Bridgen
mikeb at rabbitmq.com
Fri Oct 1 13:45:46 BST 2010
>> Another solution, which you can implement right now, is to get the
>> publishers to stick an expiry header into the message and to publish
>> the message to a dedicated delay queue. A helper app consumes messages
>> from that queue one at a time and checks the expiry. If the expiry is
>> in the past it re-publishes the message to the appropriate exchange
>> for routing. Otherwise it waits until the deadline.
>
> This (any many other) AMQP intermiediaries would be assisted by:
>
> - A way to consume messages without receiving the message content, just
> the properties and headers.
>
> - A way to republish consumed messages without having to re-send the
> message content to the server.
>
> An with these features, implementing a general and efficient message
> scheduler based on timer wheels would be fairly simple.
Interesting thought; like a basic.head (just the headers please) and
basic.redirect (please dequeue this and publish it again). The latter
could work with (unacked) messages acquired through basic.consume or
basic.get, too.
In the case of plugins, using a direct connection is effectively the
same thing, by the way.
mkb
More information about the rabbitmq-discuss
mailing list