我的设置如下所示:
- 扇出dl交换(DLX)=〉dl仲裁队列(DLQ)
- 直接交换(MainX)=〉仲裁队列(MainQ)&路由密钥=〉
策略=〉{x-死信交换:DLX,x-溢出:拒绝-发布-dlx,x-最大长度:十个
- 1个消费者客户端绑定到MainX/MainQ
- 1个消费者客户端绑定到DLX/DLQ
- 1个发布者在数秒内将数千条消息推送到DLQ
根据该策略,队列容纳的消息不应超过10条,任何超过长度限制的消息都应丢弃并死信到DLX中。但是,该策略似乎被忽略了,因为没有一条消息进入DLQ。
我尝试手动将消息发布到DLQ,它被成功接收和使用。
我希望有人遇到了类似的问题,或者可以告诉我,如果我做错了什么基于上述。
1条答案
按热度按时间pkmbmrz71#
我已经发现了这个问题,这是由于我最初创建MainQ的方式造成的。我用正确的配置重新创建了它,并开始接收消息。