简体   繁体   中英

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

how SignalR manages connections between multiple servers? as far as i know tcp connection (which is the underlying technology of websocket) has server affinity.

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. This greatly impedes proper site scaling.

Theres a few different backplanes supported, including Redis, SQL, and 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

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

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