具有许多请求的 Blazor Server 应用程序使网站不稳定

Sna*_*yes 3 c# blazor

我创建了 Blazor 服务器 Web 应用程序,并将其部署在 Azure 应用服务上,在Network选项卡中我看到大量请求,https://mywebsites0123.azurewebsites.net/_blazor?id=3OO-T6L4Bu9bMRF8QAo_5Q&_=166722导致应用程序不稳定。

在本地主机(调试和发布)上,我找不到任何请求,并且应用程序运行顺利。

我读了这篇C# Blazor 服务器 - 为什么有这么多 _blazor 请求和如此多的内存消耗?但找不到解决方案。

启动页面如下所示:

ConfigureServices(IServiceCollection services)

 services.AddRazorPages();
services.AddServerSideBlazor().AddMicrosoftIdentityConsentHandler();

services.AddSignalR(e =>
{
                e.MaximumReceiveMessageSize = 2000 * 1024;
});

// Radzen init
services.AddScoped<DialogService>();
services.AddScoped<TooltipService>();
services.AddScoped<NotificationService>();

services.AddMemoryCache();

var apiScope = Configuration["Authentication:ApiScope"];
services.AddMicrosoftIdentityWebAppAuthentication(Configuration, "Authentication:AzureAd")
.EnableTokenAcquisitionToCallDownstreamApi(new string[] { apiScope })
.AddInMemoryTokenCaches();

services.AddControllersWithViews().AddMicrosoftIdentityUI();
services.AddAuthorization();
Run Code Online (Sandbox Code Playgroud)

Configure(IApplicationBuilder app, IWebHostEnvironment env)

if (env.IsDevelopment())
{
   app.UseDeveloperExceptionPage();
}
else
{
    app.UseExceptionHandler("/Error");
    app.UseHsts();
}

app.UseHttpsRedirection();
app.UseStaticFiles();

app.UseRouting();

app.UseAuthentication();
app.UseAuthorization();

app.UseEndpoints(endpoints =>
{
    endpoints.MapControllers();
    endpoints.MapBlazorHub();
    endpoints.MapFallbackToPage("/_Host");
});
Run Code Online (Sandbox Code Playgroud)

我收到很多请求: 在此输入图像描述

几秒钟后:

在此输入图像描述

然后请求数量继续增加。不知道当应用程序托管在 Azure 应用程序服务上时为什么会发生这种情况。

有什么要寻找的提示吗?

解决方案:

在 Azure AppService 上启用 WebSockets(默认情况下为关闭),如下所述: https: //learn.microsoft.com/en-us/aspnet/core/signalr/publish-to-azure-web-app ?view=aspnetcore-6.0#在 azure 应用服务中配置应用

在此输入图像描述

Sna*_*yes 5

解决方案:

在 Azure AppService 上启用 WebSockets(默认情况下为关闭)所述: https: //learn.microsoft.com/en-us/aspnet/core/signalr/publish-to-azure-web-app ?view=aspnetcore-6.0#在 azure 应用服务中配置应用

在此输入图像描述