消费者可以在 Azure 服务总线应用程序的本地吗?

Can the consumer be on premise for an Azure Service Bus application?

关于 Azure 服务总线的快速提问。我们希望避免设置本地队列或使用其他服务总线框架,因此一直在研究 Azure 服务总线。

假设使用 expressroute 或 VPN 等从本地到 Azure 的完全连接,那么在本地托管的应用程序可以使用 Azure 服务总线吗?

发送可能没问题,但 listening/subscription 是如何工作的。有没有人遇到任何问题或 API 是否能很好地处理网络问题、延迟等问题?

基本上,我想问的是拥有使用 Azure 服务总线的本地应用程序是否是个好主意。

问候 阿马尔

您可以让 on-premises 进程通过 Azure 服务总线与 Azure 或 on-premises 中的其他进程进行通信。与数据中心的距离会引入大量延迟,因此与数据中心部署相比,预计吞吐量较低。

要考虑的另一个方面是 intermittent failures。除了客户端本身的 built-in 重试之外,您还需要在适当的时候处理和重试。

Basically, I am trying to ask if it is a good idea to have on premise applications that make use of Azure Service Bus.

最终这取决于您的业务案例。如果您处于混合场景中,是的,这样做很有意义。如果您主要使用服务总线进行通信 on-premises,我会研究混合 transport/messaging 选项。