我正在尝试弄清楚如何使用 SignalR 横向扩展与 SqlServer 背板。否则我们无法在 Kubernetes 中使用多个实例。 我查找了 Nuget
Microsoft.AspNetSignalR.SqlServer
,但不存在 NET6
。
我也尝试在文档中查找,但这一篇讨论了 Redis 背板https://learn.microsoft.com/en-us/aspnet/core/signalr/redis-backplane?view=aspnetcore-6.0
是否可以使用 SQL Server?如果可以,如何使用?
谢谢
如果您使用 ASP.NET Core SignalR,这是可能的。
它作为第三方 SignalR 背板提供商列在 MS 文档的最底部: https://learn.microsoft.com/en-us/aspnet/core/signalr/scale?view=aspnetcore-6.0
在 Nuget 上查找:IntelliTect.AspNetCore.SignalR.SqlServer。
尽管它显示与 3.1 和 5.0 的兼容性,但它对我使用 6.0 有效。
根据下面的链接,“该项目主要基于 SignalR Core Redis 提供程序的一个分支,经过重新设计以使用经典 ASP.NET SignalR SQL Server 底板的基本概念。”
https://github.com/IntelliTect/IntelliTect.AspNetCore.SignalR.SqlServer
我们通过将 SignalR 分离到它自己的容器中来解决这个问题。该服务有一个 REST 端点。从其他容器运行的服务使用此端点,从而在集线器上广播消息。 这样一来,就不需要背板了。