RabbitMQ为断开连接的消费者保留多长时间的消息?

时间:2016-07-05 05:04:17

标签: rabbitmq

假设队列的消费者已经断开了一段时间,在此期间会产生大量的消息。

  1. RabbitMQ在没有持久模式的情况下为断开连接的消费者保留消息多长时间? (它会在消费者断开连接之后立即丢弃队列吗?还是会在内存允许之前保留队列?)

  2. 持久模式是否会为消费者提供消费直到现在才发布的消息的功能? (即随机访问队列,无序取消消息或从队列开头消费)

1 个答案:

答案 0 :(得分:1)

  1. 有一些TTL extensions
  2.   

    可以通过设置x-message-ttl参数为给定队列设置TTL   到queue.declare,或者设置message-ttl政策。

    1. 不,它没有。无论持久性如何,消息都会保留在队列中,直到它们被确认为止。 (当然,除非服务器死机,否则如果先前没有标记为持久消息,消息就会消失。)