跳到主要内容

RabbitMQ消息传输保证层级?

参考答案:

RabbitMQ 的消息传输保证分为三个层级,分别是:

  1. At most once(最多一次):这种模式下,消息可能会丢失,但绝不会重复传输。
  2. At least once(最少一次):这种模式下,消息绝不会丢失,但可能会重复传输。
  3. Exactly once(恰好一次):这种模式下,每条消息肯定会被传输一次且仅传输一次。

在 RabbitMQ 中,为了确保消息的可靠传输,通常需要考虑生产者100%投递、MQ持久化、消费者100%消费等三个层面。同时,还需要处理可能出现的生产者消息重复发送的问题,例如在网络波动的情况下,生产者可能在没有收到确认的情况下重新发送消息,这可能会导致消息在 MQ 中重复存储。

总的来说,RabbitMQ 的消息传输保证层级提供了灵活的选择,以满足不同场景下的需求。同时,通过合理的配置和策略,可以确保消息的可靠传输和处理。