【问题标题】:RabbitMQ custom exchange (script-exchange installation trouble)RabbitMQ 自定义交换(script-exchange 安装麻烦)
【发布时间】:2013-09-19 09:21:19
【问题描述】:
默认情况下,当我发送缺少 routing_key 的消息时,代理会拒绝它。如何强制 RabitMQ 将一个发送到某个“默认”队列?例如,我有 3 个消费者,其键为“con1”、“con2”和“con4”。我使用密钥“con3”发送一条消息,我需要代理将消息重新排队到某个“启动器”队列,该队列可以启动“con3”消费者并再次重新排队消息?
我找到了这个https://github.com/tonyg/script-exchange,我确定它对我有帮助,但我无法安装它,因为存储库在 4 年前更新,而且现代的伞式开发工具包不支持这个旧的 makefile。
【问题讨论】:
标签:
python
rabbitmq
message-queue
publish-subscribe
amqp
【解决方案1】:
必须结合使用alternate exchange 协议扩展和consistent-hash exchange plugin。因此,您应该声明 2 个交换:direct 和 x-consistent-hash(替代第一个)。然后所有现有的消费者都应该创建自己的队列,绑定到直接交换。在这种情况下,所有带有“con1”、“con2”和“con4”路由键的消息将被直接路由到消费者,而带有另一个路由键的消息将被重新路由到可以将它们路由到某些“经理”的备用交换机,它会启动必要的处理器(消费者)。
'script-exchange' RabbitMQ 插件现在不受支持。