注意::从我得到的答复来看,Azure Service Bus似乎不是此工作的正确工具。我将问题留在这里,以防其他人使用。
我想设置一种情况,我有一个发布消息的应用程序,而有多个接收消息的应用程序。据我所知,Azure Service Bus Topics是为此目的而设计的。对this question的可接受答案是同一句话。
我一直遵循quick start sample来生成两个控制台应用程序,一个用于发送消息,一个用于接收消息。当我只有一个接收器应用程序实例在运行时,这很好用,但是如果我启动两个接收器实例,则只有其中一个接收到任何消息。
我尝试在接收消息的代码中删除对CompleteAsync
的调用,但这没有任何区别。
我正在使用的代码与该文章中显示的完全一样,因此在此处全部贴上没有意义。
我敢肯定我只是对一些基本知识有误解,但我认为这样的想法是,主题和订阅可以使您拥有尽可能多的接收者。
有人能解释我在做什么吗?
答案 0 :(得分:0)
扩展接收器表示单个逻辑端点。您可以扩展以更快地处理消息,而不是确保每个实例都获得一个副本。如果您有此需要,那么您的接收者在逻辑上必须是不同的端点,而不是相同的端点。相同的逻辑接收者/端点不应两次处理相同的消息。
总结一下:
答案 1 :(得分:0)
您需要具有不同的订阅客户端来代替不同的接收者。您应该在“主题”下有两个“订阅”,以便在两个不同的地方收到它。
通过这种方式,您需要为两个订阅创建一个订阅客户端,每个接收器应用程序中一个。这样您就可以同时在两个应用程序中接收消息。