From 31aa7731d9f377eaf81889acde59c4e4e79759a2 Mon Sep 17 00:00:00 2001 From: Luke Latham Date: Tue, 1 Sep 2020 05:23:33 -0500 Subject: [PATCH] Enhance Blazor Server sticky sessions requirement (#19731) --- aspnetcore/blazor/hosting-models.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/aspnetcore/blazor/hosting-models.md b/aspnetcore/blazor/hosting-models.md index daf33526ff..08748cefa7 100644 --- a/aspnetcore/blazor/hosting-models.md +++ b/aspnetcore/blazor/hosting-models.md @@ -69,6 +69,9 @@ The Blazor Server hosting model offers several benefits: * Thin clients are supported. For example, Blazor Server apps work with browsers that don't support WebAssembly and on resource-constrained devices. * The app's .NET/C# code base, including the app's component code, isn't served to clients. +> [!IMPORTANT] +> A Blazor Server app prerenders in response to the first client request, which sets up the UI state on the server. When the client attempts to create a SignalR connection, **the client must reconnect to the same server**. Blazor Server apps that use more than one backend server should implement *sticky sessions* for SignalR connections. For more information, see the [Connection to the server](#connection-to-the-server) section. + There are downsides to Blazor Server hosting: * Higher latency usually exists. Every user interaction involves a network hop.