RabbitMQ Headers Exchange,其中X-Match等于任何

问题描述 投票:1回答:1

有人可以解释为什么会这样吗?

我创建了一个头交换并将其绑定到三个具有不同参数的队列,如下所示:

enter image description here

然后我尝试发布一条消息,其中任何格式为:pdf的队列都会收到它,如下所示:

enter image description here

但是交换似乎无法将其路由到正确的队列,因为我收到以下消息:

enter image description here

由于我找不到与我有同样问题的人,这可能是我在这里做错了

请注意,例如,如果我发送x-match:all,format:pdf和type:report,则队列test-queue-A正常获取它

rabbitmq rabbitmq-exchange
1个回答
3
投票

可能是我误解了你在描述中提供的各种图片,但根据可用的信息here

看起来您正在将x-match=any添加到邮件的标题中,而在您的交换和队列之间的绑定中可能会出现这种情况。

它表明绑定的工作原理:

消息和绑定之间的任何公共标头都计为匹配,

或者绑定中引用的所有头文件都需要出现在消息中才能匹配。

© www.soinside.com 2019 - 2024. All rights reserved.