gpt4 book ai didi

azureservicebus - 在 Azure 服务总线中处理不同消息类型的好做法是什么

转载 作者:行者123 更新时间:2023-12-04 23:58:06 24 4
gpt4 key购买 nike

我刚开始使用基于消息的体系结构,例如 Azure 服务总线主题/订阅功能。

我想知道如何最好地处理不同的消息类型。

例如。说我有两条消息。一个用于创建新客户,另一个用于删除客户。

我可以;

  • 创建两个主题。每个主题将有一个订阅。处理消息的代码将独立处理其消息类型。
  • 为客户创建一个主题。创建一个订阅以接收所有消息。处理消息的代码需要在处理消息之前确定消息类型。
  • 为客户创建一个主题。创建两个订阅,用于过滤消息类型。处理消息的代码将独立处理其消息类型。

  • 我敢肯定没有对错之分,但希望有这方面经验的人提供一些意见。

    非常感谢,

    大卫

    最佳答案

    选择主题/订阅的一些注意事项:

  • 您是否有一个对不同消息类型或单一消息类型感兴趣的单一节点(进程/应用程序等)。如果您需要一个应用程序来处理多种消息类型(添加和删除),那么最好是有一个主题。然后您的应用程序可以监听单个订阅并处理两个消息,您还可以向该单个订阅添加更多应用程序实例。稍后,如果您决定分离该处理,您仍然可以创建两个不同的订阅并过滤消息,以将添加/删除消息发送给一个或另一个。
  • 如果您的系统专注于单个客户,假设您正在为每个客户编写多个服务,那么每个客户有一个主题是好的,因为您可以与客户线性扩展,并且不同客户之间有明确的授权/处理边界。但是,如果您通过单个 Multi-Tenancy 服务处理所有客户请求,并且不希望每个客户拥有不同的服务实例,那么这不是最佳方法。
    从一个主题开始可以为您提供很大的灵活性,以后您可以使用 ForwardTo随着系统的发展,将消息从单个订阅引导到另一个主题/队列等。这允许您从一个简单的拓扑开始创建丰富的消息传递拓扑。
  • 关于azureservicebus - 在 Azure 服务总线中处理不同消息类型的好做法是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14319539/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com