11

我已经构建了这个示例:.net 中的 RabbitMQ 入门,但制作了 2 个程序:

  • 一个出版商
  • 一个订户

我正在使用BasicPublish发布和BasicAck收听示例。如果我在来自发布者的每条“发送消息”上运行一个发布者和几个订阅者,那么只有一个订阅者会收到它。因此,发布者向订阅者发送消息时存在某种顺序(当订阅者开始时),我想向所有订阅者发送一条消息。那个样本有什么问题?您是否可以通过 RabbitMq 提供发布者/订阅者消息交换的工作示例?

4

3 回答 3

13

您链接到的示例使用没有交换的简单排队,这确保只有一个消费者将处理消息。要在 RabbitMQ 中支持发布/订阅,您需要首先创建一个 Exchange,然后让每个订阅者在该 Exchange 上绑定一个队列。生产者然后将消息发送到 Exchange,Exchange 会将消息发布到已绑定的每个 Queue(至少使用简单的 Fanout 交换类型。路由可以通过 Direct 和 Topic 交换来实现。)

有关 Java 示例(可以很容易地转换为 C#),请参见此处

编辑: 更新的 .Net 版本可以在这里找到

于 2011-05-10T14:34:32.863 回答
4

在 .net 中添加了关于 RabbitMQ 入门的新教程

于 2011-05-19T23:05:40.337 回答
1

现在也有一些官方消息来源

于 2011-10-19T12:59:00.673 回答