双Azure SignalR资源下ServerStickyMode是否必需的技术问询
Azure SignalR ServerStickyMode 必要性与SKU实例影响疑问
我们部署了两个Azure SignalR服务实例,搭配两个Web应用服务,当前的SignalR配置代码如下:
.AddSignalR().AddAzureSignalR(options => { options.Endpoints = new[] { new ServiceEndpoint(configuration["SignalRConnectionStringPrimary"], EndpointType.Primary, "Primary"), new ServiceEndpoint(configuration["SignalRConnectionStringSecondary"], EndpointType.Primary, "Secondary") options.ServerStickyMode = ServerStickyMode.Disabled; }; })
目前我们遇到文档描述矛盾的问题,同时禁用ServerStickyMode后出现间歇性失效:
- 微软官方文档指出:使用Azure SignalR服务时无需粘性会话(即
ServerStickyMode非必需),因为客户端连接时会直接重定向到Azure SignalR服务; - 某技术博客提到:多应用服务器场景下,协商请求与Hub调用可能被路由到不同服务器,需启用
ServerStickyMode以保证二者统一。
基于此我们有两个疑问:
- 在多应用服务器+多Azure SignalR服务的场景下,
ServerStickyMode是否确实是必需的? - Azure SignalR的SKU实例数量会对
ServerStickyMode的需求产生影响吗?
我们的核心诉求是确保SignalR发布的数据能被所有订阅者正常接收。
内容的提问来源于stack exchange,提问作者mt758824
相关产品推荐
相关产品推荐

