0

我试图找出如何通过事件驱动方法通知多个微服务 (MS) 实例,如果它们的 Azure 应用程序配置值发生更改。我发现我通过 Eventgrid 可以监听 Azure 应用程序配置中的更改,但我没有找到任何内置方法来将事件分发到多个实例(许多 MS 实例)......我可以选择 webhook 但它会是一个例如,我可以选择其他事件驱动的方法作为事件中心,但是我必须设置它,我想知道什么是最佳实践?我不希望每个 MS 轮询更改,而是通知并接收已更改的内容,或者是否有更好的内置方法/策略?

4

1 回答 1

1

对于来自 Azure 应用配置的基于推送的配置更新,建议的方法是将事件转发到服务总线主题。Azure 服务总线 SDK 提供了RegisterMessageHandler方法,该方法允许客户端注册一个消息处理程序,该处理程序将为主题中收到的每条消息触发。微服务的每个实例都可以设置对此服务总线主题的订阅,并在服务初始化期间注册消息处理程序以接收配置更新。

可以在此处找到设置服务总线主题的说明。有关可用于订阅服务总线主题的协议和所需的防火墙配置的详细信息,请参见此处。由于单个主题最多可以支持 2000 个订阅,因此这种方法最多允许 2000 个服务实例。

于 2021-01-04T22:30:52.593 回答