【发布时间】:2018-01-03 14:12:01
【问题描述】:
一方面,我有一个自定义网页,它会向我发送一些用于测试目的的消息。另一方面,我有 4 个消费者,它们监听同一个队列(循环模式)。
每个消费者在收到消息后都需要做好工作,例如阅读消息、编码字符串并创建文件、启动另一个应用程序、向客户发送电子邮件。
如果我为一位消费者运行我的解决方案,效果会很好。但是,如果尝试为不止一个消费者做同样的事情,我会遇到例外。
如果我在队列中收到许多消息,我会尝试向每个消费者发送一条消息并等待他们的响应。当我在队列中收到消息时执行此操作。
如果有人可以帮助我并告诉我在哪里可以找到此类信息或一些示例,我会很高兴。
【问题讨论】:
-
您将违反发布/订阅的规则。生产者不应该了解他们的消费者。当“所有消费者”时:生产者需要知道他们(或数量)才能等待“他们全部”。重新思考你的设计!
-
这是 Scatter-Gatter 模式。目前你只能通过 saga 来做到这一点。
-
谢谢。有没有办法将消息顺序发送到每个队列,以便有相同数量的消息
标签: c# .net rabbitmq masstransit