You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Blazor Server应用闲置后频繁出现加载状态如何解决

Blazor Server闲置后自动重连加载图标问题解决方法

这个问题是Blazor Server默认的SignalR连接超时与重连机制导致的:客户端和服务器通过SignalR维持的实时连接,在闲置一段时间后会自动断开,触发后台自动重连,期间就会显示加载图标。以下是具体解决方法:

  • 调整SignalR连接超时参数
    在项目的Program.cs中,配置SignalR的超时和心跳间隔,延长连接存活时间:

    builder.Services.AddServerSideBlazor()
        .AddHubOptions(options =>
        {
            // 设置客户端超时时间(示例为300秒,可根据需求调整)
            options.ClientTimeoutInterval = TimeSpan.FromSeconds(300);
            // 设置服务器心跳发送间隔(需小于客户端超时时间)
            options.KeepAliveInterval = TimeSpan.FromSeconds(120);
        });
    
  • 自定义或隐藏重连加载提示(可选)
    若不想让用户看到默认加载图标,可通过两种方式处理:

    1. 在_Host.cshtml中自定义加载内容:
      <component type="typeof(App)" render-mode="ServerPrerendered">
          <!-- 替换为自定义加载提示,或留空隐藏 -->
      </component>
      
    2. 通过CSS隐藏默认加载弹窗:
      #components-reconnect-modal {
          display: none !important;
      }
      
  • IIS部署场景补充配置
    如果应用部署在IIS上,还需调整应用程序池的闲置回收设置:

    1. 打开IIS管理器,找到对应应用的程序池
    2. 右键选择「高级设置」
    3. 将「闲置超时(分钟)」调至更大值(如20分钟)
    4. 将「Ping Enabled」设为False,避免IIS主动回收闲置进程

内容的提问来源于stack exchange,提问作者mahdi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 13:18:27