rabbitmq-死信队列(死信交换机)(十)

rabbitmq-死信队列(死信交换机)(十)_第1张图片

消息进入死信队列的条件

  • 队列消息数量到达限制;比如给队列最大只能存储10条消息,当第11条消息进来的时候存不下了,第11条消息就被称为死信
  • 消费者拒接消费消息,basicNack/basicReject,并且不把消息重新放入原目标队列,requeue=false
  • 原队列存在消息过期设置,消息到达超时时间未被消费;

队列绑定死信交换机(重点,也就是在正常队列里设置者两个参数)
给队列设置参数: x-dead-letter-exchange 和 x-dead-letter-routing-key

xml配置死信交换机



    
    <rabbit:queue name="test_queue_dlx" id="test_queue_dlx">
        
        <rabbit:queue-arguments>
            
            <entry key="x-dead-letter-exchange" value="exchange_dlx"/>
            
            <entry key="x-dead-letter-routing-key" value="dlx.hehe">entry>
            
            <entry key="x-message-ttl

你可能感兴趣的:(rabbitmq,rabbitmq,分布式,java)