zoukankan      html  css  js  c++  java
  • RabbitMQ之死信队列

    1:何为死信队列

    死信队列也是一个正常的队列,可以被消费。
    但是,死信队列的消息来源于其他队列的转发。

    2:如何触发死信队列

    • 1:消息超时
    • 2:队列长度达到极限
    • 3:消息被拒绝消费,并不再重进队列,且reQueue = false

    需要在消费者的 arguments 中配置死信队列,配置为:

    "x-dead-letter-exchange":"自定义的交换机名称"

    3:在Java中实例死信队列

    3.1:生产者代码

    3.2:消费者代码

    4:测试效果

    4.1:打开RabbimtMQ UI 页面,开启消费者

    可以看到新创建了个交换机:

    点击交换机:

    每个交换机都有自己的队列。

    4.2:关闭消费者,开启生产者,直到消息全部超时

    在UI界面-队列界面

    等待十秒钟之后:

    可以看到消息全部从正常队列转发到死信队列中了。

    4.3:此时开启消费者

    可以看到消费者接收到了死信队列的消息。

    5:拓展

    5.1:如何定义客户端连接名称

    5.2:如何限制消费者并发量


    从外部给定一个线程池,消费者执行任务从该线程池获取线程。

    5.3:什么叫消费预取数?


    点击进入官方文档

  • 相关阅读:
    spring guides
    Go 汇编入门
    go内存管理
    websocket
    Scheduling In Go
    log-structured-merge-trees
    InfluxDB 内部机制解析
    thread-states
    MySQL高可用方案
    Amazon Aurora解读
  • 原文地址:https://www.cnblogs.com/zgq7/p/13785760.html
Copyright © 2011-2022 走看看