RabbitMQ-消息延迟

一、死信交换机

1、描述

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

2、图解

3、过程

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

二、官方插件-延迟队列

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

相关推荐
已是上好佳几秒前
介绍一下Qt中的事件过滤
java·服务器·数据库
Java中文社群10 分钟前
面试官:你项目是如何保证高可用的?
java·后端·面试
不修×蝙蝠16 分钟前
SpringBoot(一)--搭建架构5种方法
java·spring boot·架构·配置·搭建
FreemanGordon1 小时前
Java volatile 关键字
java
北京_宏哥1 小时前
《手把手教你》系列基础篇(九十三)-java+ selenium自动化测试-框架设计基础-POM设计模式实现-上篇(详解教程)
java·前端·selenium
北京_宏哥1 小时前
《手把手教你》系列基础篇(九十二)-java+ selenium自动化测试-框架设计基础-POM设计模式简介(详解教程)
java·selenium·前端工程化
当归10241 小时前
微服务与消息队列RabbitMQ
java·微服务
Lx3521 小时前
《从头开始学java,一天一个知识点》之:循环结构:for与while循环的使用场景
java·后端
Cache技术分享2 小时前
15. Java 如何声明一个变量来引用数组
java·前端
雷渊2 小时前
深入分析理解mysql的MVCC
java·数据库·面试