RabbitMQ支持每条消息的TTL,但是我发现如果第一条消息有长TTL,第二条消息有短TTL(过期更快),第二条消息将不会被发送到死信队列(DLQ),直到第一条消息过期。是否可以根据单个过期时间使消息过期,而不管它们在队列中的位置?
jobtbby31#
RabbitMQ严格遵循FIFO消息排序。它只会去处理下一条消息,直到队列中的头消息(队列中的第一条消息)过期,并被丢弃或死信到其他交换机。文件当特定事件发生时,具有追溯性地应用于它们的每消息TTL的队列(当它们已经有消息时)将丢弃消息。只有当过期的消息到达队列的头部时,它们才会被实际丢弃(或死信)。
1条答案
按热度按时间jobtbby31#
RabbitMQ严格遵循FIFO消息排序。它只会去处理下一条消息,直到队列中的头消息(队列中的第一条消息)过期,并被丢弃或死信到其他交换机。
文件
当特定事件发生时,具有追溯性地应用于它们的每消息TTL的队列(当它们已经有消息时)将丢弃消息。只有当过期的消息到达队列的头部时,它们才会被实际丢弃(或死信)。