RabbitMQ 支持每条消息的 TTL,但我发现如果第一条消息的 TTL 较长,而第二条消息的 TTL 较短(过期更快),则第二条消息将不会发送到 DLQ,直到第一条消息过期。
是否可以根据各个消息的过期时间来使消息过期,而不管它们在队列中的位置如何?
谢谢!
RabbitMQ 严格遵循 FIFO 消息排序。 它只会去处理下一条消息,直到队列中的头消息(队列中的第一条消息)过期并被丢弃或死信到其他交换器。
追溯应用每条消息 TTL 的队列(当 他们已经有消息)将在特定时丢弃消息 事件发生。仅当过期消息到达队列头部时 它们实际上会被丢弃(或死信)吗?