简体   繁体   English

SignalR如何使用背板管理多个服务器之间的连接?

[英]how SignalR manages connection between multiple server using a back plane?

how SignalR manages connections between multiple servers? SignalR如何管理多个服务器之间的连接? as far as i know tcp connection (which is the underlying technology of websocket) has server affinity. 据我所知,TCP连接(这是Websocket的基础技术)具有服务器相​​似性。

Basically you fallback on using a "Backplane" to communicate with clients instead of direct server -> client communication. 基本上,您可以使用“底板”与客户端通信,而不是直接服务器->客户端通信。 As you are aware, the normal, basic mode of SignalR is "sticky" in that it is between one server and the client, and switching to a new server isn't possible. 如您所知,SignalR的常规基本模式是“粘性”的,因为它处于一台服务器和客户端之间,并且不可能切换到新服务器。 This greatly impedes proper site scaling. 这极大地阻碍了站点的适当扩展。

Theres a few different backplanes supported, including Redis, SQL, and Azure Service Bus. 支持几种不同的背板,包括Redis,SQL和Azure Service Bus。

See this article for a good overview of scaling out with SignalR: http://www.asp.net/signalr/overview/performance/scaleout-in-signalr 请参阅本文,以获取使用SignalR进行横向扩展的良好概述: http : //www.asp.net/signalr/overview/performance/scaleout-in-signalr

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM