Azure主题-同一订阅上的多个侦听器

时间:2019-10-18 15:15:27

标签: azure azure-servicebus-topics

是否可以在一个Azure主题订阅上具有多个侦听客户端,并且它们都接收所有消息? 我的理解是,订阅的唯一实现是已发布消息仅传递给该订阅上的一个客户端,就像队列一样。

可以使用相同的订阅将这些消息复制到多个客户端吗?

编辑:潜在用例示例

服务器将已更改其值的对象通知订阅该主题的所有客户端(通过浏览器或应用程序的Web客户端)

更简单地说,多台PC可以看到数据值更改

编辑2:我的设置/我在寻找什么

我遇到的问题是消息被标记为由一个客户端使用,而没有传递给另一客户端。在测试环境中,我有3台PC:(1台PC发布该主题的消息(我们将其称为Publisher),另外2台PC使用相同的SubscriptionName订阅了该主题(我们将其称为Client 1和Client 2 ))。

所以我们有以下设置:

  1. 发布者-发布到主题
  2. 客户端1 -使用SubscriptionName = Test1
  3. 进行了订阅
  4. 客户端2 -使用SubscriptionName = Test1订阅

发布者将10条消息发布到该主题。

  • 客户端1收到消息0
  • 客户端2收到消息1
  • 客户端1收到消息2

...依此类推(客户端1和客户端2均未收到全部10条消息

我希望客户端接收所有消息,例如:

  • 客户端1 AND 客户端2收到消息0
  • 客户端1 AND 客户端2收到消息1
  • 客户端1 AND 客户端2收到消息2

...等等。

2 个答案:

答案 0 :(得分:0)

Service Bus是一对一或端到端的消息传递系统。

您需要的是Azure事件中心或事件网格。

答案 1 :(得分:0)

client1和client2不可能获得相同的消息。

简而言之,当client1从订阅中收到一条消息并成功处理该消息时,该消息将从订阅中删除,因此client2将无法再次接收相同的消息。

希望这可以澄清。