“应用程序池关闭期间超出时间限制”的原因是什么?


8

我有一个网站会随机(通常每隔几个小时一次)抛出500个错误。我检查了事件视图,并看到以下错误:

服务应用程序池“ xxxxxxx ”的进程在关闭期间超过了时间限制。进程ID为“ xxxx”。

我想知道此问题的潜在原因是什么,以便我可以解决它?

Answers:


11

每个IIS(可能是每个Web应用程序)都是IIS,它链接到一个应用程序池,该池包含托管进程的配置。

其中一些属性与流程的回收(终止和重新启动)方式有关。默认情况下,每个应用程序将每隔1740分钟(29小时)终止一次,但如果它无法回答“ ping”(实际上,运行状况监测信号正常),则如果闲置了20分钟(默认情况下,也是默认情况下)20分钟,也可以将其回收。 。管理员可以设置其他限制。

回收应用程序后,容器进程将关闭。(默认情况下)它有90秒钟可以正常关闭,否则它将被强制关闭。

因此,导致问题的原因是达到了Web应用程序的回收限制之一,从而导致IIS尝试终止它。不幸的是,该应用程序未能及时关闭,从而导致了(临时)错误500。

现在,还有另一个方面:如果您的应用程序在5分钟的时间内“失败”(即,发回服务器错误)超过5次(默认情况下)超过5次(默认),则它将被IIS关闭并保持关闭状态,直到您手动重新启动它。

所有这些都指向您的应用程序代码中的错误。与该代码的供应商联系,他们将帮助您诊断确切的问题。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.