RabbitMQ-消息延迟

一、死信交换机

1、描述

        一个队列接收到的消息有过期时间,消息过期之后,如果配置有死信队列,消息就会进去死信队列。

2、图解

RabbitMQ-消息延迟_第1张图片

3、过程

        当生产者将消息发送到exchange1,然后交换机将消息路由到队列queue1,但是队列queue1没有消费者,所以当该队列里面的值过期时,就会将消息发送到死信交换机exchange2,进而到达死信队列,最后被消费。从而达到了延迟消息的目的。

二、官方插件-延迟队列

        DelayExchange的本质还是官方的三种交换机,只是添加了延迟功能。因此使用时只需要声明一个交换机,交换机的类型可以是任意类型,然后设定delayed属性为true即可。

你可能感兴趣的:(mq,java-rabbitmq,rabbitmq,java)