【问题标题】:Why use NServiceBus with AzureServiceBus?为什么将 NServiceBus 与 AzureServiceBus 一起使用?
【发布时间】:2019-11-18 12:04:36
【问题描述】:

AzureServiceBus 和 NServiceBus 对我来说都是新的,我正在探索将 NServiceBus 用于微服务架构。

我知道 NServiceBus 可以使用不同的传输方式,例如 Learning、SQLServer、MSMQ、AzureServiceBus 等。我还使用上述传输方式创建了 POC。

我想了解的是,当 AzureServiceBus 可以作为企业服务总线工作时,与它一起使用 NServiceBus 有什么好处?

换句话说,我为什么要使用 AzureServiceBus 作为 NServiceBus 中的传输?有什么理由不只使用 AzureServiceBus?

【问题讨论】:

    标签: architecture microservices nservicebus azureservicebus


    【解决方案1】:

    我为什么要在 NServiceBus 中使用 AzureServiceBus 作为传输?

    Azure 服务总线不是一个微不足道的依赖项。有些事情,例如重试和间歇性错误、连接处理、序列化和反序列化、消息大小限制、事务管理等等,您可能不想自己做或将其包含在代码中。这就是 NServiceBus 发挥作用的地方。它还带来了一些您在早期可能不一定会考虑的额外好处。例如操作工具(监控、手动重试等)。它提供的编程模型为您提供了许多概念的抽象,允许您最终在需要时转移到另一个消息传递服务。

    从业务角度来看,开发人员可以专注于业务问题,而不是先花时间构建中间件来处理 Azure 服务总线,然后将中间件支持集成到分配给业务问题/产品的预算中。 NServiceBus 的成本与开发时间的成本相比,再加上与 Service Bus 相关的代码维护和错误修复的持续成本,是微不足道的。就像公司在构建业务软件时不构建自己的操作系统一样,我们的客户选择专注于他们的核心业务,将消息传递基础设施留给 NServiceBus。

    免责声明:我参与了 NServiceBus 的开发,并且是 Azure 服务总线传输的贡献者。

    【讨论】:

    • 感谢@Sean Feldman 的回答,这将有助于做出决定。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多