0

我对消息系统非常陌生,我试图在http://www.rabbitmq.com/tutorials/上找到我的答案,我很确定它应该在那里,但到目前为止我得到了一点与所有绑定、队列、交换混淆。

因此,我正在寻找如何指定“队列”类型的问题的答案(对不起,如果我不得不为此使用其他词)。在生产者方面。为了更清楚,我会给你一个例子:

在此处输入图像描述

所以我希望我的消费者订阅一个“队列”,并且一旦它收到它就会根据这个队列中的内容执行一些操作。让我们说如果消息包含图片而不是做某事,如果它是文本,而不是做其他事情。

我在想我的生产者应该type:foo在有效载荷中添加类似的东西,而不是消费者会寻找这个type。但我希望有一个更好的解决方案。像在队列中添加标题之类的东西。

谢谢你。

4

1 回答 1

2

如果您的消费者必须为不同类型的消息执行不同的任务,那么最好为每个任务创建一个不同的消费者。

这样,您可以轻松地为每种类型的消息创建一个队列,并让每个消费者从正确的队列中消费消息。

您的生产者可以直接或使用 RabbitMQ 路由将消息发送到正确的队列。

看看 RabbitMQ 网站上的“路由”教程,它似乎与您的用例相匹配:http ://www.rabbitmq.com/tutorials/tutorial-four-python.html

于 2013-05-27T08:12:53.820 回答