<div dir="ltr">Hi All,<div><br></div><div>We have a perfect use case for the immediate flag now, but just discovered it was deprecated in RabbitMQ 3.x. Oops.</div><div><br></div><div>We considered the suggested alternative of using a message TTL of 0 and dead-letter exchanges, but ran into these two issues:</div>
<div><ul><li>If x-message-ttl is set to 0 on the queue, then what <i>should be</i> a message-specific option now effects every message on the queue. This isn't acceptable for us.</li><li>If expiration is set to 0 on a message, the message will not be dead-lettered until it gets to the head of the queue (which could be a <i>long</i> time).</li>
</ul><div>We need to support scenarios where the publisher chooses on a message-by-message basis if the message should be "immediate". </div></div><div><br></div><div>The best I can come up with is splitting every queue into two queues now-- one that has x-message-ttl set to 0 and one that doesn't, and each consumer would need to consume from <i>both</i> queues. And publishers would need to specify different routing keys based on if they want "immediate" or not... I don't really like this idea much.</div>
<div><br></div><div><div>Question #1: Is there some other way of doing it that I'm not thinking of?</div></div><div><br></div><div>Question #2: Has there been any thought to supporting "immediate" again? Or is it definitely a thing of the past?</div>
<div><br></div><div>Thanks!</div><div>Chris</div></div>