IIS下ASP.NET Core随机重启

Dan*_*yuk 6 iis app-offline.htm asp.net-core

我们发现了一个问题,某些服务器上的 ASP.NET Core 应用程序每天随机重启。

  • Windows Server 2012 R2 标准版,IIS 8.5.9600.16384
  • 托管包 Microsoft.NETCore.App 2.1.4、Microsoft.AspNetCore.App 2.1.4
  • 进程外托管模型
  • 应用程序池回收被禁用

在应用程序部分的事件查看器中

应用程序“MACHINE/WEBROOT/APPHOST/APPLICATIONNAME”成功启动进程“xxx”,并正在侦听端口“xxx”。(事件 ID 1001)

发送关闭 HTTP 消息以处理“6860”并收到 http 状态“202”。(事件 ID 1006)

检测到 App_offline 文件“app_offline.htm”(事件 ID 1012)

同时在系统部分

TCP/IP NetBIOS Helper 服务进入运行状态。(事件 ID 7036)

TCP/IP NetBIOS Helper 服务进入停止状态。(事件 ID 7036)

TCP/IP NetBIOS Helper 服务已成功发送停止控制。指定的原因是:0x40030011 [操作系统:网络连接(计划)] 注释:无(事件 ID 7042)

所有事件都在 2-3 秒内发生

No *_*rns 5

听起来您在 IIS 上配置了 periodicalRestart。 https://learn.microsoft.com/en-us/iis/configuration/system.applicationhost/applicationpools/add/recycling/periodicrestart/ 我认为默认间隔是 29 小时。禁用此设置。


Dan*_*yuk 1

当我们的应用程序节点在租约时间到期并且 LAN 适配器刷新 DHCP 租约时出现 DHCP 问题时,IIS 和 AspNetCoreModule 的行为非常奇怪。

此时,aspnet 模块开始查看app_offline.htm文件(我们不知道为什么会发生这种情况),然后立即重新启动应用程序。

并且只有出现此问题的服务器才启用 DHCP。我们在适配器设置中指定静态IP地址来解决这个问题。