RabbitMQ自学笔记——延迟消息

延迟消息:生产者发送消息时指定一个时间,消费者不会立刻收到消息,而是在指定时间之后才收到消息。

1.死信交换机

初始设定消息的过期时间为30s,由于simple.queue队列没有消费者,当消息到达过期时间,没人消费就会成为死信,然后投到死信交换机dlx.direct中,就可供消费者消费。通过这种机制就可实现延迟消息。

发送方:

接收方:

2.延迟消息插件

RabbitMQ的官方也推出了一个插件,原理就是设计了一种支持延迟消息功能的交换机,当消息投递到交换机后可以暂存一定的时间,到期后再投入到队列中。虽然使用很便捷,但是对mq的性能来说还是有影响。

发送方发送消息时需要通过消息头来设置过期时间:

消费者方设置交换机支持延迟消息:

相关推荐
深圳雨林凯AI2 小时前
图案裂变的“风格归一化“设计思路:主体保得住,画风才拉得齐|雨林凯AI技术笔记
人工智能·笔记
冬木家居3 小时前
40㎡客厅变形记,小家住出大自由[特殊字符]
android·经验分享·笔记·智能家居·微信公众平台
摇滚侠3 小时前
《SpringBoot 3:入门与应用实战》第 12 章 JDBC 与事务 数据库初始化机制 阅读笔记 36
数据库·spring boot·笔记
推送者5 小时前
用宠物照片制作桌宠:从AI拆帧到九点标定的本地化实现笔记
笔记·宠物·用宠物照片制作桌宠
一条破秋裤6 小时前
16_TIM编码器接口测速
笔记·stm32·学习
tju新生代魔迷6 小时前
Verilog HDL 学习笔记(十)| 第10章 时序和延迟
笔记·学习·fpga开发
血小板要健康8 小时前
链表 阶段算法总结
java·数据结构·笔记·算法·leetcode·链表
浔溺8 小时前
al+大数据每日学习笔记31
大数据·笔记·学习
摇滚侠8 小时前
《SpringBoot 3:入门与应用实战》第 9 章 跨域问题 阅读笔记 27
spring boot·笔记·okhttp
山岚的运维笔记8 小时前
mysql 专业笔记 -- 第 8 章:使用变量
运维·数据库·笔记·后端·学习·mysql·dba