Rabbitmq诊断中出现错误,指出:
您收到的邮件多于已发送的邮件。没有全部路由 消息可能表明缺少绑定。
只是想知道如何调试和修复此问题,即使这很重要?
答案 0 :(得分:1)
我想到的最简单的方法是使用alternate exchange配置。 想法是,任何无法通过“正常”交换路由的消息都将交给其备用交换。 对于备用交换,请定义绑定到单个队列的扇出交换(将其称为notroutedq)。
当您在notroutedq中看到一条消息时,您知道确实确实缺少绑定,并检查了消息属性,可以看到消息具有哪个路由键,并调整绑定以确保正确处理此类消息