我已经构建了这个示例:Getting Started With RabbitMQ in .net,但是制作了两个程序:
我正在使用BasicPublish
发布和BasicAck
来监听,例如。如果我在发布者的每个“发送消息”上运行一个发布者和几个订阅者,则只有一个订阅者获得它。因此,发布者向订阅者发送消息,并且我想向所有订阅者发送一条消息,因此存在一些订单(如订阅者已启动)。这个样本有什么问题?您可以通过RabbitMq提供发布者/订阅者消息交换的工作样本吗?
答案 0 :(得分:10)
您链接到的示例使用简单排队而不进行交换,这可确保只有一个消费者将处理该消息。要在RabbitMQ中支持pub / sub,您需要首先创建一个Exchange,然后让每个订阅者在该Exchange上绑定一个Queue。然后,生产者向Exchange发送消息,Exchange将消息发布到已绑定到它的每个队列(至少使用简单的Fanout交换类型。可以通过Direct和Topic交换实现路由。)
对于Java示例(可以很容易地转换为C#),请参阅here。
修改强> 可以找到更新的.Net版本here
答案 1 :(得分:4)
答案 2 :(得分:1)
现在还有一些official sources。