0

我有一个 id 的任务,每个任务都有一些工作要做:

  • 每个用户的每个工作;
  • 对于每个任务,用户数和作业数都不同。

而且我想把所有的作业放到一个名为task{id}的队列中,这样我就可以控制任务何时完成(通过空队列task{id}),并在rabbitMQ的帮助下自动删除它,并控制一些从事一项任务{id}的消费者。

而且我希望我的消费者一直像守护进程一样工作,并自动选择带有作业的队列来使用。

这里的主要问题是如何获取消费者内部的任务名称以将它们绑定到它?或者也许在不知道队列名称的情况下,rabbitMQ 可能还有其他技巧可以做到这一点?

4

1 回答 1

0

您需要使用Event Exchange Plugin,该插件允许您使用内部事件并将它们重新发布到主题交换,从而将事件公开给客户端(应用程序)。

您可以绑定到queue.createdEvent,它将在消息头中为您提供队列的名称,然后您可以使用它将您的消费者绑定到该特定队列

于 2019-11-25T10:28:59.027 回答