RabbitMQ自学笔记——延迟消息

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

1.死信交换机

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

发送方:

接收方:

2.延迟消息插件

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

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

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

相关推荐
一隅论数智6 天前
给AI一张“业务概念地图“:本体如何从哲学走向企业智能
大数据·人工智能·经验分享·笔记·学习·学习方法·政务
深圳老胡6 天前
STM32F407 控制 L6470 步进电机驱动 —— 控制过程简介
笔记·stm32·单片机·嵌入式硬件·代码规范
Because_of_Her16 天前
并查集-听课笔记
笔记·算法·并查集
彧azz6 天前
Linux 环境下 Redis 学习总结:数据类型、持久化、锁、事务、主从与缓存问题
linux·redis·笔记·学习·面试
陈卫军老师6 天前
陈卫军:把口味写在一张纸上,店才稳得住
经验分享·笔记·流量运营
`流年づ6 天前
人工智能学习笔记 - 补充
人工智能·笔记·深度学习·学习
qeen876 天前
【Linux】操作系统之进程介绍(二)
linux·笔记·学习·进程
Thomas.Sir6 天前
第21课:PyTorch|GPU多卡训练与分布式训练基础【让多卡并行成为你的加速引擎】
人工智能·pytorch·分布式
从零开始的嵌入式之旅6 天前
day47
arm开发·经验分享·笔记·嵌入式硬件
Cicada1286 天前
库存消息消费的正确性设计——从幂等窗口到批量流水线
分布式·系统架构