RabbitMq高级特性

  1. 消息的可靠性投递(confirm确认模式,return退回模式)生产者配置

     RabbitMq高级特性

 

confirm消息确认机制:

消息的确认,是指生产者投递消息后,如果Broker收到消息,则会给我们生产这一个应答。

生产者进行接收应答,用来确定这条消息是否正常的发送到Broker,这种方式也是消息的可靠性投递的核心保障。

 

实现案例:

配置文件开启确认机制

RabbitMq高级特性

生产者(消息发送到交换机时确认是否收到):

RabbitMq高级特性

消息回退机制(消息由交换机发送到队列时确认):

1.开启回退机制(配置文件中开启如上确认机制)

RabbitMq高级特性

消费者Ack手动确认机制:

Ack确认机制:

1.自动确认机制(默认acknowledge=“none”)

2.手动确认机制(acknowledge = "manual")

3.根据异常情况确认(acknowledge = "auto")

 

手动确认机制配置:

RabbitMq高级特性

RabbitMq高级特性

 

 

消息限流:

前提:Ack确认机制为手动确认,消费者配置perfetc属性,设置每次最多可接受多少消息进行处理,在消息未确认时无法接受新的消息

RabbitMq高级特性

 

延迟队列:

死信队列+普通队列实现

普通队列不设置消息的消费者并且设置TTL消息过期时间,死信交换机通过路由key绑定到普通交换机上,死信交换机绑定消费者,当普通队列上的消息过期时,数据就会进入死信队列,完成消息的延迟消费

RabbitMq高级特性