当前位置: 首页 > news >正文

RabbitMQ的高级特性-死信队列

死信(dead message) 简单理解就是因为种种原因, ⽆法被消费的信息, 就是死信.
有死信, ⾃然就有死信队列. 当消息在⼀个队列中变成死信之后,它能被重新被发送到另⼀个交换器
中,这个交换器就是DLX( Dead Letter Exchange ), 绑定DLX的队列, 就称为死信队列(Dead Letter Queue,简称DLQ).

消息变成死信⼀般是由于以下⼏种情况:
1. 消息被拒绝( Basic.Reject/Basic.Nack ),并且设置 requeue 参数为 false.
2. 消息过期.
3. 队列达到最⼤⻓度.

正常队列绑定死信交换机:

@Bean("normalQueue")
public Queue normalQueue() {
Map<String, Object> arguments = new HashMap<>();
arguments.put("x-dead-letter-exchange",Constant.DLX_EXCHANGE_NAME);//绑定死
信队列
arguments.put("x-dead-letter-routing-key","dlx");//设置发送给死信队列的
RoutingKey
return
QueueBuilder.durable(Constant.NORMAL_QUEUE).withArguments(arguments).build();
}
return QueueBuilder.durable(Constant.NORMAL_QUEUE)
.deadLetterExchange(Constant.DLX_EXCHANGE_NAME)
.deadLetterRoutingKey("dlx").build();

http://www.lryc.cn/news/449908.html

相关文章:

  • Python 复制PDF中的页面
  • Sql Developer日期显示格式设置
  • IP地址与智能家居能够碰撞出什么样的火花呢?
  • 人工智能技术在电磁场与微波技术专业的应用
  • The First项目报告:探索Yield Guild Games运行机制与发展潜力
  • 完成UI界面的绘制
  • iot网关是什么?iot网关在工业领域的应用-天拓四方
  • 从碎片到整合:EasyCVR平台如何重塑城市感知系统的视频数据生态
  • java socket bio 改造为 netty nio
  • 进程、线程、协程详解:并发编程的三大武器
  • 探索5 大 Node.js 功能
  • EZUIKit.js萤石云vue项目使用
  • 【Linux】磁盘分区挂载网络配置进程【更详细,带实操】
  • Java 为什么使用 UTF-16 而不是更节省内存的 UTF-8?
  • 损失函数篇 | YOLOv10 引入 Inner-IoU 基于辅助边框的IoU损失
  • 夹耳开放式耳机好用吗?一篇文章告诉你答案,附上挑选避坑小知识
  • WebSocket 2024/9/30
  • 大数据开发--1.1大数据概论
  • Java | Leetcode Java题解之第438题找到字符串中所有字母异位词
  • springboot整合MybatisPlus+MySQL
  • 【MySQL】视图、用户和权限管理
  • Linux基础(五):linux文件种类与扩展名
  • C语言-c语言组成
  • 编程题 7-13 日K蜡烛图【PAT】
  • iOS开发工程师面试
  • 无人机避障—— 激光雷达定高北醒TF03-UART(二)
  • 在虚幻引擎中实现Camera Shake 相机抖动/震屏效果
  • SQL Server的文本和图像函数
  • PN8034非隔离12V300MA,SOP7/DIP7开关电源芯片
  • VMware下Ubuntu找不到共享文件夹