gpt4 book ai didi

RabbitMQ header 交换使用 "NOT"或 "Didn' 不适合其他人去这里”

转载 作者:行者123 更新时间:2023-12-03 09:25:02 25 4
gpt4 key购买 nike

过去几周我一直在学习 RabbitMQ。我正在尝试使用“ header ”交换来设置决策树类型路由。如果匹配的话我知道如何将其分支出来。但我想要一个“捕获所有”队列,仅当 header 与树中的其他任何内容都不匹配时才发送到该队列。

所以

Exchange1 -> if header.value1 = "company1" then goto queue "company1"

-> if header.value1 = "company2" then goto queue "company2"

-> if header.value1 didn't match anyone else then goto queue "catch all"

我很容易弄清楚前两个。但我不知道如何做“不”或“没有找到匹配”。

如果只是设置“捕获所有”而没有任何与之关联的规则,则所有消息都会发送到那里,包括在其他规则下找到匹配项的消息。

最佳答案

RabbitMQ 绑定(bind)中没有 NOT 功能。然而,RabbitMQ 提供了一项功能来完成您正在寻找的功能,称为备用交换。

您需要在交换器中设置策略以将消息发送到备用交换器,并且您将需要绑定(bind)另一个队列(因为您将“捕获所有”)。这个新的交换器将只获取以前无法路由的消息,因此可以将其创建为扇出。

您可以在这里找到更多信息:Alternate Exchanges

关于RabbitMQ header 交换使用 "NOT"或 "Didn' 不适合其他人去这里”,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22995372/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com