小编ALA*_*ALA的帖子

IIS 的“SendResponse”状态下的请求卡住了很长时间;缓慢的 IIS 7.5/ASP.NET 4.0 Web 应用程序

我有一组非常强大、未充分利用的服务器,它们运行着几个带有 Windows Server 2008 R2 和 IIS 7.5 的虚拟机。

问题:有时请求需要很长时间来处理。用户看到他们的浏览器在旋转,显然没有从 IIS 得到任何响应。

一些统计数据和尝试解决:

  • 服务器(主机和虚拟机)上的负载可以忽略不计。CPU 永远不会超过 5%,有 10+ GB 的可用 RAM,一切都通过 MPIO 连接到快速 SAN。
  • 我每秒收到 30 到 50 个请求,混合了动态和静态内容,只有 GET 和 POST。大多数命中被缓存(80% 命中率),因此结构/SAN/IO 上的负载几乎为零。
  • 在主机和虚拟机上禁用 TCP 卸载,无论是在网络适配器上还是通过禁用 TCP 烟囱
  • Web 应用程序在 ASP.NET 4.0 集成模式下运行。他们不会对第三方 Web 服务等进行长时间的调用。
  • 我已经尝试过 processModel autoConfig,以及将 maxWorkerThreads、maxConnections、maxIOThreads 等设置为非常高的数字,没有任何区别。
  • 数据库查询都在不到 1 秒的时间内完成。我分析了一整天,并没有捕获一个需要更长时间的查询。
  • 我看过大量的性能监视器计数器;ASP.NET 队列和应用程序队列总是空的,似乎没有任何东西排队(考虑到服务器根本没有出汗,这没有任何意义)
  • 我已经确定使用 appcmd 列表请求有时请求在 IIS 的“SendResponse”阶段“卡住”20-60 秒。到目前为止,这是我能找到的唯一可以解释为什么我们看到用户在导航时卡住的原因。请注意,尽管大多数请求都得到了快速处理,但看起来就像来自不同应用程序池的随机请求卡在这里一样。

知道我还能看什么吗?什么会导致请求卡在 IIS 的“SendResponse”阶段?

iis asp.net iis-7.5 response-time request

7
推荐指数
1
解决办法
1万
查看次数

标签 统计

asp.net ×1

iis ×1

iis-7.5 ×1

request ×1

response-time ×1