有什么方法可以知道IIS中的应用程序池为何重新启动吗?

问题描述 投票:0回答:1

我有一台运行 IIS 10.0 的 Windows Server 2016 计算机。它托管许多应用程序池。特别是一个池会随机重新启动。这是一个被大量使用的池,这种中断对我们来说是一个问题。我们注意到这种重新启动,因为当客户端重新进行身份验证(包括数百个重新加载的 ASP 会话和数千个 SignalR 连接)时,站点变得有些无响应。然后一切恢复正常。我们需要找出网站重新加载的原因,以便解决问题。

我们已经尝试过的事情,以及我们已经消除的重启的潜在原因:

  • 这不是空闲超时。该站点使用频繁,空闲超时已禁用。
  • 这不是每日自动回收。此功能已禁用。
  • 我们不认为这是文件配置更改,例如 web.config 或 in 文件夹中的某些内容。我们在 web.config 中添加了
    fcnMode="Disabled"
    来阻止这种情况,但没有看到任何效果。其他站点不会重新加载,因此这不是某种全局 IIS 文件更改。
  • Windows 事件日志中没有任何类别与此相关的事件。就好像没有发生错误一样。或者它没有被记录。
  • inetpub\logs\LogFiles\W3SVC1iislogs\www\HTTPERR 中的日志文件没有我们可以找到与这些重新启动相关的信息。

我想澄清的是,该进程没有被终止,也没有崩溃。托管该池的 w3wp 可执行文件的正常运行时间不会回到零。这更像是一种回收。每天发生3-6次。

我们可以做什么来查找原因?我们可以启用任何日志记录 - 无论是错误还是优雅的“故意”重启?

编辑: - 我们在

System.Web.Hosting.HostingEnvironment.ShutdownReason
上找到并添加了日志,我们希望这会有所帮助。留下任何其他想法的问题。

asp.net-mvc iis iis-10 application-pool
1个回答
0
投票

根据我的经验,如果你的应用程序池自动重启,那是因为该网站对服务器的CPU使用率很高,所以IIS会自动回收你的应用程序池。您是否检查过您的应用程序并检查过您的 IIS 设置,确定您没有对您的网站设置任何限制?

© www.soinside.com 2019 - 2024. All rights reserved.