我有一个 IIS 6 服务器,它使用经典的 ASP 和 ASP.NET 为应用程序提供服务。
我越来越多地遇到问题,即 ASP.NET 请求队列中的请求数(使用 ASP.NET\Requests Queued 计数器观察)开始增加到服务器无法再为请求提供服务的程度。这发生在排队请求开始增加的三四分钟后。回收应用程序池可恢复服务。
通常,排队的请求为零,偶尔会有小峰值,但似乎每天一到两次,许多请求阻塞了队列,排队的请求开始增加。
我怀疑有网络问题导致客户端失去连接(并重新提交他们的请求),尽管失去了他们的客户端,队列中的请求仍在继续。
我发现“用于 IIS 故障排除和 IIS7 的有用工具和附加组件”列表中的 MS 跟踪诊断工具 (IISReqMon)将为我提供有关当前工作进程及其在应用程序池中的请求的信息。
在调试方面没有多大帮助,但我怀疑代码而不是网络出现死锁,因为 IIS 就连接性而言调试得很好。我不希望它像那样失败。
我猜你的网站最近变得更忙了,因此出现了僵局问题。