RabbitMQ怎么实现延迟队列?

前言

RabbitMQ本身是不支持延迟消息的,但是RqbbitMQ可以通过其提供的两个特性TTL(消息存活时间)和DLX(死信交换器)来实现。

TTL+死信队列

在MQ中,设置消息的过期时间,但是该消息没有消费者,同时绑定死信队列,在消息过期后,消息将转到死信队列,消费者消费死信队列的消息即可,这就是使用TTL+死信队列实现的延迟队列。

RabbitMQ插件

还可以使用延迟消息插件实现延迟队列,延迟消息插件可以直接创建延迟交换器,在发送消息时,指定消息的延迟时间,在MQ中的消息到达延迟时间后,在将其转发到对应的队列中,由消费者进行消费。

相关推荐
慧一居士5 小时前
ShardingSphere-JDBC 与 Sharding-JDBC 的对比与区别
分布式·系统架构
隰有游龙8 小时前
hadoop集群启动没有datanode解决
大数据·hadoop·分布式
UCoding8 小时前
我们来学zookeeper -- 集群搭建
分布式·zookeeper
小马哥编程9 小时前
【ISAQB大纲解读】Kafka消息总线被视为“自下而上设计”?
分布式·kafka·系统架构·linq
帅气的小峰12 小时前
1-【源码剖析】kafka核心概念
分布式·kafka
xiaolin033312 小时前
【RabbitMQ】- Channel和Delivery Tag机制
分布式·rabbitmq
不吃饭的猪13 小时前
记一次运行spark报错
大数据·分布式·spark
qq_4639448614 小时前
【Spark征服之路-2.1-安装部署Spark(一)】
大数据·分布式·spark
昭阳~15 小时前
Kafka深度技术解析:架构、原理与最佳实践
分布式·架构·kafka
ikun·15 小时前
Kafka 消息队列
分布式·kafka