C# IIS上出现大量请求超时
我有一个相当繁忙的网站,每月浏览量约为1000万次 我的一个应用程序池似乎堵塞了几个小时,我正在寻找一些解决问题的方法。。?我怀疑它不知何故耗尽了线程,但我不确定如何追溯确定这一点。。?以下是我所知道的:C# IIS上出现大量请求超时,c#,asp.net,iis,C#,Asp.net,Iis,我有一个相当繁忙的网站,每月浏览量约为1000万次 我的一个应用程序池似乎堵塞了几个小时,我正在寻找一些解决问题的方法。。?我怀疑它不知何故耗尽了线程,但我不确定如何追溯确定这一点。。?以下是我所知道的: 该网站从未“宕机”,但大约90%的请求开始超时 我可以在中断期间的日志中看到大量“HttpException-请求超时” 我找不到任何可能导致超时的SQL错误或代码错误 所有页面上的超时似乎都是站点范围内的 有一个页面上有一个bug,可能会导致该特定页面出现错误 该站点必须重新启动 该网站
- 该网站从未“宕机”,但大约90%的请求开始超时
- 我可以在中断期间的日志中看到大量“HttpException-请求超时”
- 我找不到任何可能导致超时的SQL错误或代码错误
- 所有页面上的超时似乎都是站点范围内的
- 有一个页面上有一个bug,可能会导致该特定页面出现错误
- 该站点必须重新启动
我已经设法在问题发生时追踪到了它。页面正在正常加载,但由于某些原因,WebResource.axd和ScriptResource.axd都需要一分钟才能加载。在性能计数器中,我可以看到此时ASP.NET请求排队的峰值 我要尝试的第一件事是Sam Saffron's,它应该能说明是否有一些常见的事情发生得太多/太久。部分原因是它不涉及任何变化;只需在服务器上运行它 之后,还有其他各种调试工具可用;我们已经发现,这可以非常有效地看出时间花在了哪里(当然,它只对成功结果的10%起作用) 当然,您只需打开服务器分析工具并拖入各种.NET/IIS计数器,这可能会帮助您发现一些问题 在这三个选项中,您应包括:
- 代码掉入黑洞后再也不会出现(通常与线程相关)
- 代码正在运行,但速度太慢(通常与数据访问相关)