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

ASP.NET Razor Pages生产环境单域名请求延迟排查求助

问题概述

ASP.NET Razor Pages应用在Windows Server 2019(IIS 10)上发布后,单个域名出现显著请求延迟:

  • 调试模式运行正常,生产环境每次请求约10秒延迟,每张静态图片额外增加10秒延迟
  • 数据库查询耗时<5ms,MiniProfiler显示Result: PageResult存在明显延迟
  • 日志显示Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation.RuntimeViewCompiler找到编译视图后,与Microsoft.AspNetCore.Mvc.RazorPages.Infrastructure.PageActionInvoker执行完PageResult之间存在10秒间隙,无中间日志
  • 同服务器其他4个域名配置(IIS、web.config、appsettings.json)一致,仅域名和数据库不同,无延迟问题
  • 已升级至.NET 8,所有包为最新版本
排查步骤
  • 禁用运行时编译,预编译视图
    当前启用了AddRazorRuntimeCompilation(),生产环境建议预编译视图以避免运行时编译的潜在问题:

    1. 修改Program.cs,移除.AddRazorRuntimeCompilation()
    2. 在项目csproj文件中添加配置:
      <MvcRazorCompileOnPublish>true</MvcRazorCompileOnPublish>
      <RazorCompileOnBuild>true</RazorCompileOnBuild>
      
    3. 重新发布应用,验证延迟是否消失
  • 检查文件系统权限
    对比正常域名的应用程序池身份权限,确保问题域名的应用池账号对以下路径有完全控制权限:

    • 网站根目录及子文件夹
    • 服务器临时目录(默认C:\Windows\Temp)
    • 应用目录下的obj、bin文件夹
      权限不足可能导致运行时编译或静态文件读取阻塞
  • 排查域名解析与静态文件引用

    1. 将页面中图片的绝对域名引用改为相对路径(如/images/xxx.png),验证是否减少延迟,排除域名解析阻塞
    2. 检查服务器本地hosts文件是否有该域名的异常配置,清理DNS缓存(执行ipconfig /flushdns)
  • 检查IIS静态文件与请求规则

    1. 确认问题域名的IIS"静态文件"功能已启用
    2. 对比正常域名,检查IIS的请求筛选、URL重写、输出缓存规则是否存在针对该域名的特殊配置
    3. 查看IIS日志(默认路径C:\inetpub\logs\LogFiles),分析静态文件请求的耗时字段,确认延迟是否发生在静态文件处理阶段
  • 捕获线程栈定位阻塞点
    在请求卡住的10秒间隙,使用工具定位阻塞代码:

    1. 打开Process Explorer,找到问题域名对应的w3wp.exe进程
    2. 右键进程→Properties→Threads,查看处于等待状态的线程,右键选择Stack Trace,找到阻塞的具体调用
    3. 或使用Windows Performance Recorder录制请求过程,分析CPU/IO等待事件,定位瓶颈
  • 排查数据库连接隐性延迟
    虽然查询耗时短,但连接初始化可能存在延迟:

    1. 将问题域名的数据库连接字符串改为SQL Server身份验证(替代Windows身份验证),验证是否改善
    2. 检查应用池账号对该数据库的AD域身份验证是否存在延迟(可通过测试直接在服务器上连接数据库验证)
  • 临时禁用Session排查
    当前启用了Session和分布式内存缓存,尝试临时移除相关配置:

    1. 在Program.cs中注释AddDistributedMemoryCache()、AddSession()、UseSession()代码
    2. 重新发布,验证延迟是否消失,排除Session存储的阻塞问题
  • 检查服务器安全软件拦截
    对比其他域名,检查服务器上的防火墙、杀毒软件、Web应用防火墙(WAF)是否对该域名的请求有额外扫描规则,导致每个请求被延迟10秒。可临时关闭安全软件测试,确认是否为拦截导致

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.28 05:16:02