RabbitMQ-TTL/死信队列/延迟队列高级特性

文章目录

  • TTL
  • 死信队列
    • 消息成为死信的三种情况
    • 队列如何绑定死信交换机
  • 延迟队列
    • RabbitMQ如何实现延迟队列

总结来源B站黑马程序员

TTL

TTLTTL(Time To Live):存活时间/过期时间当信息到达存活时间后,还没有被消费,会被自动清除。RabbitMQ可以对消息设置过期时间,也可以对整个队列(Queue)设置过期时间

死信队列

DLX(Dead Letter Exchange):死信交换机,当消息成为Dead Message后,可以被重新发送到另一个交换机,这个交换机就是DLX死信队列原理:当给正常的队列设置过期时间后,在这个过期时间内消息没有被消费的消息会被丢弃,但如果这个正常的队列绑定了一个死信交换机,那么队列里过期没有被消费的消息将不会直接被丢弃而是被直接发送给死信交换机死信交换机再将过期的信息发送给其他的队列(死信队列),从而过期的消息又可以被重新消费了。

截图来自黑马程序员

消息成为死信的三种情况

死信的三种情况1.队列消息长度达到限制2.消费者拒绝消费消息,basicNack/basicReject并且不把消息重新放入原目标队列,requeue=false3.原队列存在消息过期设置,消息到达超时时间未被消费。

队列如何绑定死信交换机

队列绑定死信交换机给对垒设置参数:x-dead-letter-exchage和x-dead-letter-routing-key

在这里插入图片描述

延迟队列

延迟队列:即消息进入队列后不会立即被消费,只有到达指定时间(过期时间TTL)后,才会被消费。需求场景:1.下单后,30分钟未支付,取消订单,回滚库存2.新用户注册成功7天后,发送消息问候。

在这里插入图片描述

RabbitMQ如何实现延迟队列

RabbitMQ本身并未直接提供延迟队列的功能。但我们可以将"TTL"+"死信队列"的组合方式实现延迟队列的效果.

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/511487.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于springboot+vue的社区养老服务平台

博主主页:猫头鹰源码 博主简介:Java领域优质创作者、CSDN博客专家、阿里云专家博主、公司架构师、全网粉丝5万、专注Java技术领域和毕业设计项目实战,欢迎高校老师\讲师\同行交流合作 ​主要内容:毕业设计(Javaweb项目|小程序|Pyt…

基于SpringBoot+Apache POI的前后端分离外卖项目-苍穹外卖(十九)

数据导出 1. 工作台1.1 需求分析和设计1.1.1 产品原型1.1.2 接口设计1.2.1 Controller层1.2.2 Service层接口1.2.3 Service层实现类1.2.4 Mapper层 1.3 功能测试 2. Apache POI2.1 介绍2.2 入门案例2.2.1 将数据写入Excel文件2.2.2 读取Excel文件中的数据 3. 导出运营数据Excel…

【Linux】软件包管理器yum

目录 一、yum是什么? 二、查看软件包 三、安装与卸载软件 1、如何安装软件 2、如何卸载软件 四、yum源的配置 一、yum是什么? 在Linux下安装软件, 一个通常的办法是下载到程序的源代码, 并进行编译, 得到可执行程序. 但是这样太麻烦了, 于是有些人…

【Linux】Linux原生异步IO:AIO

1、IO模型 1.1 简述 相信大家在搜索的时候,都会看到下面这张图,IO的使用场景:同步、异步、阻塞、非阻塞,可以组合成四种情况: 同步阻塞I/O: 用户进程进行I/O操作,一直阻塞到I/O操作完成为止。同步非阻塞I/O: 用户程序可以通过设置文件描述符的属性O_NONBLOCK,I/O操作可…

【c++】STL--List的实现

目录 一. List的数据结构 二. List实现的基本框架 1. list的结点结构类 2. List的迭代器类 正向迭代器 反向迭代器 3. List操作接口的实现 1. 默认成员函数 构造函数 和 析构函数 拷贝构造函数 和 赋值运算符重载 2. 修改相关函数接口 insert 和 erase …

Day22 集合,ArrayList,泛型

Day22 集合:概念 ;使用(熟悉API);深入底层原理 ;项目中的应用 ; 1.集合含义 集合是Java API所提供的一系列类,可以用于动态存放多个对象 (集合只能存对象) 集合与数组的不同在于&a…

抖音视频评论批量采集软件|视频下载工具

《轻松搞定!视频评论批量采集软件,助您高效工作》 在短视频这个充满活力和创意的平台上,了解用户评论是了解市场和观众心声的重要途径之一。为了帮助您快速获取大量视频评论数据,我们推出了一款操作便捷、功能强大的软件&#xff…

Day31|贪心算法1

贪心的本质是选择每一阶段的局部最优,从而达到全局最优。 无固定套路,举不出反例,就可以试试贪心。 一般解题步骤: 1.将问题分解成若干子问题 2.找出适合的贪心策略 3.求解每一个子问题的最优解 4.将局部最优解堆叠成全局最…

Python web框架fastapi中间件与CORS详细教学

✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 所属专栏:Fastapi 景天的主页:景天科技苑 文章目录 fastapi中间件与CORS1、中间件1.创建中间件方法2.中间件里面添加响应头…

图章制作工具软件安装教程(附软件下载地址)

软件简介: 软件【下载地址】获取方式见文末。注:推荐使用,更贴合此安装方法! 图章制作工具是一款易于操作的软件,可以帮助您制作各种图章。它具备强大的功能,如连线、内线、图符以及中心框线的设置&#…

我们距离AGI还有多远?

关于HBM那份纪要的其他反馈 上篇文章发了一篇HBM纪要小部分内容(星球更新了另一部分),收到很多业内大佬们的反馈,包括颗粒计算、封装订单划分等等,以及是不是某通某电的一个专家。其中倒是出现一个非共识的说法&#…

Jenkins 的安装(详细教程)

文章目录 一、简介二、安装前准备三、windows 安装与启动1. 方式一2. 方式二3. 方式三 四、创建管理员用户五、常用设置1. 配置镜像地址2. 更改工作目录3. 开启可注册用户4. 全局变量配置 一、简介 官网:https://www.jenkins.io 中文文档:https://www.j…