是否可以将Azure SignalR服务与本地SignalR结合使用



我们正在评估Azure SignalR服务,以可能取代我们当前的本地SignalR。我们正在使用.Net Core 2.2.402

我们尝试了以下方法:

services.AddSignalR();
services.AddSignalR().AddAzureSignalR(Configuration["Azure-SignalR:Connection-String"]);

并将路线和枢纽定义如下:

app.UseAzureSignalR(route =>
{
route.MapHub<QueueHub>("/queue");
});
app.UseSignalR(route =>
{
route.MapHub<MessagesHub>("/message");
});

理想情况下,我们希望在同一个Web应用程序中同时使用这两种应用程序,但它似乎只适用于其中一种。

使用Azure SignalR时,当客户端启动与服务器的连接时,.NET CORE应用程序会将连接重定向到Azure,因此使用Azure SignalR处理连接,并且只提供逻辑集线器本身。当你执行services.AddSignalR().AddAzureSignalR(...)时,第一个只有signalR的注册似乎被第二个语句覆盖了,这可能是你不能同时使用这两个语句的原因。

最新更新