【发布时间】:2018-04-11 08:36:48
【问题描述】:
我有一个5节点集群,每个节点都有一个微服务(这是一个无状态的可靠服务)在运行,它正在接收来自Azure Service Bus的消息。 p>
由于我只为 my_topic(Topic Name) 创建了一个 my_Subscription(Subscription Name),因此微服务实例正在随机接收消息。
我期待它在每个实例都订阅服务总线主题时被广播。
现在,如果是这种情况,我需要为每个实例创建一个新订阅,我需要更改 ARM template 并在每次我希望扩展服务时重新部署它? p>
【问题讨论】:
-
考虑到您的所有微服务实例都只轮询一个订阅,这难道不是预期的行为吗?
-
@GauravMantri 现在如果是这种情况,我需要为每个实例创建一个新订阅,我需要更改 ARM 模板并在每次我希望我的服务扩展时重新部署它?
-
听起来您已经准备好使用竞争消费者模式 - docs.microsoft.com/en-us/azure/architecture/patterns/…
-
我很想知道您为什么希望多个实例处理同一条消息。通常我们希望消息只被处理一次。你介意详细说明一下吗?谢谢!
-
@GauravMantri 在我的情况下,需要同时更新所有实例的 inMemory 缓存,因此您需要在所有实例中使用消息
标签: c# azure publish-subscribe azureservicebus azure-servicebus-topics