Spring AMQP DirectContainer 不断重新排队出错
Spring AMQP DirectContainer keeps requeuing on errors
使用 Spring Boot 2.1.6 和 Spring AMQP/RabbitMQ 当在 @ 中抛出异常时,这些 application.properties 都不会触发 DLX/DLQ兔子监听器:
spring.rabbitmq.listener.direct.default-requeue-rejected=false
spring.rabbitmq.listener.default-requeue-rejected=false
而 isDefaultRequeueRejected() 总是计算为真。我如何将其更改为 false 以导致正确的 DLX/DLQ?
也许你错过了
spring.rabbitmq.listener.type=direct
?
当缺少它时,我得到的结果与您相同 - none 的侦听器属性已应用,包括您正在谈论的那个。
spring.rabbitmq.listener.type=direct
spring.rabbitmq.listener.direct.default-requeue-rejected=false
对我来说很好用;失败的消息被拒绝而不重新排队。
默认的容器类型是 simple
所以你设置的 direct
属性 会被忽略。
使用 Spring Boot 2.1.6 和 Spring AMQP/RabbitMQ 当在 @ 中抛出异常时,这些 application.properties 都不会触发 DLX/DLQ兔子监听器:
spring.rabbitmq.listener.direct.default-requeue-rejected=false
spring.rabbitmq.listener.default-requeue-rejected=false
而 isDefaultRequeueRejected() 总是计算为真。我如何将其更改为 false 以导致正确的 DLX/DLQ?
也许你错过了
spring.rabbitmq.listener.type=direct
?
当缺少它时,我得到的结果与您相同 - none 的侦听器属性已应用,包括您正在谈论的那个。
spring.rabbitmq.listener.type=direct
spring.rabbitmq.listener.direct.default-requeue-rejected=false
对我来说很好用;失败的消息被拒绝而不重新排队。
默认的容器类型是 simple
所以你设置的 direct
属性 会被忽略。