【问题标题】:Is it possible to configure multiple queues to one shovel?是否可以为一把铲子配置多个队列?
【发布时间】:2012-10-16 14:01:44
【问题描述】:

我有一个 web 服务,它接受可以使用它们定义的任何队列发送到 RabbitMQ 集群的消息。这样前端开发人员就可以通过 javascript 发送消息了。

我想让 webservice 更加健壮,这样当我们遇到网络问题时,webservice 仍然可以接受消息,然后在网络备份时处理它们。经过初步阅读,Shovel 插件似乎应该可以很好地处理这个问题。

我当时的想法是在打开铲子的 web 服务盒上安装一个本地的 RabbitMQ 实例。然后我可以通过本地 RabbitMQ 实例发送所有消息,并将所有消息推送到集群并处理网络问题。

我的问题是在查看文档后,我似乎必须在 shovel 配置文件中配置我想要转发到的每个队列。如果是这种情况,我不确定这是否可行,因为我们允许客户端通过 web 服务动态定义队列。

我想让 web 服务接收消息,将它们传递给本地 rmq 实例,并让它使用相同的队列/交换/等将消息传递给集群。

有没有人试过这个或者可以解释一下铲子插件是如何工作的?

【问题讨论】:

    标签: rabbitmq


    【解决方案1】:

    您是否考虑过将消息发送到交换而不是队列。如果您需要这种灵活性,请将所有消息发送到一个交换器,可能是一个主题交换器。然后让消费者处理来自交换的不同消息或不同队列。发送到一个交易所将使配置铲子变得相当容易。

    【讨论】:

    • 这听起来像是要尝试的事情......如果我要与多个队列进行一次交换,我是否能够以编程方式命名队列,或者只能在铲子配置中发生这种情况?跨度>
    • 队列可以由消费者创建和命名,所以可以编程。我不是铲子专家。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-17
    • 2018-05-13
    • 2021-12-21
    • 1970-01-01
    • 1970-01-01
    • 2020-02-11
    相关资源
    最近更新 更多