【发布时间】:2020-12-01 22:22:43
【问题描述】:
我正在使用微服务架构并将它们部署在 k8s 中。对于不同应用程序之间的通信,我们使用 Azure eventthub 来发布和订阅事件。我的问题是,如果一个应用程序的多个实例(POD)正在运行,那么订阅的事件回调将在单个 POD 中触发还是在每个 POD 中触发?
是否需要将 POD 隔离在不同的消费组中?
【问题讨论】:
标签: azure kubernetes azure-eventhub
我正在使用微服务架构并将它们部署在 k8s 中。对于不同应用程序之间的通信,我们使用 Azure eventthub 来发布和订阅事件。我的问题是,如果一个应用程序的多个实例(POD)正在运行,那么订阅的事件回调将在单个 POD 中触发还是在每个 POD 中触发?
是否需要将 POD 隔离在不同的消费组中?
【问题讨论】:
标签: azure kubernetes azure-eventhub
在任何给定时间,只有一个处理器必须从消费者组读取事件。不要在不同的接收者之间共享一个消费者组!重要提示:他们需要主动阅读,没有“回调”。
因此,如果您有多个消费者希望接收每个事件,那么是的,您需要有多个消费者组,在您的情况下每个 pod 一个。
但是由于您在谈论发布-订阅,也许像 Azure 服务总线主题之类的东西实际上可能更适合您的场景?!
【讨论】: