由于超出了队列限制,ASP.NET拒绝了此请求

当我从IIS运行我的网站时,我得到了这个错误。

ASP.NET rejected this request because the queue limit was exceeded. 

我的用户收到错误消息:

 This service is unavailable 

回收application pool解决了一些问题,但在几个小时内又出现了问题。 我用这个公式来超过application pooqueue lenght

 available memory * processor * 10 / total number of application pool. 

我得到了4万的结果。 所以我设置queue length为40,000的应用程序池。 但是这并没有解决我的问题。 我更新了Ping maximum response time, shut down time limit and stratup time limit ,并将所有设置为200.问题没有再次发生,但我不知道它解决了我的问题或负载减less在我的网站。 我的网站现在开始正常工作。

任何人都可以知道更多的这个错误,或者有人可以build议我如何诊断问题,我希望这个错误将再次发生在下个星期五,所以我想做好准备find问题。 在这里输入图像说明

不要试图通过使队列更长来解决这个问题 – 通过修复问题开始解决问题。 更长的队列将只处理突发情况….

问题是你的服务器没有跟上,这就是队列填满的原因。 你得到很多的要求,你不能处理它们。 正如我所说 – 在一个更长的队列帮助,但最后你必须跟上。

开始分析代码并使其更有效,或者查看瓶颈(CPU,内存,光盘)的位置并添加 – 可能会添加更多的服务器。