使用 SignalR 时,Azure 服务总线或仅 Azure Web 应用程序

Azure service bus or just Azure web app when using SignalR

我从未使用过 Azure。现在,我有一个问题。 我将使用 SignalR 在 Xamarin Forms 上进行聊天。因此,聊天将有一个 1:1 和一个组 1:all 。它适用于 700 至 1.000 人的小团体。查看互联网,我不明白是否必须为 Azure App Service(标准)+ Azure Bus Service 付费,或者只是 Azure Bus Service,或者只是 Azure App Service。

如果您有 MSDN 帐户,您可以获得一定数量的免费积分,但每种类型的 Azure 服务通常都收费。查看 azure 上的定价页面,您将能够判断哪个是您的最佳选择,或者,如果您与 Microsoft 无关,那么您可以查看 Amazon 的 RabbitMQ 产品。

如果您不确定定价,请咨询 Microsoft 销售人员,他们过去曾帮助过我,而且非常好。

简答:如果您想使用 SignalR,您只需为 Azure App Service 付费即可创建单个 Web 应用程序。

您需要服务总线的唯一原因是您决定将 Web 应用扩展到多个实例。要在多个 Web 应用程序之间进行同步,SignalR 需要一个消息传递背板。这就是服务总线的用途。 SignalR 消息传递背板的其他选项是 Redis(非常快)或 Azure SQL(较慢)。我个人将服务总线用于我的 SignalR 消息传递背板。但同样,如果您只为 Web 应用程序使用一个实例,则不需要服务总线。