如何在IIS中配置进程启动超时?

irlmq6kh  于 2023-03-02  发布在  其他
关注(0)|答案(1)|浏览(314)

我正在IIS服务器上运行基准测试,看看它如何扩展。我有一个昂贵的启动过程(从SQL阅读大量数据,填充AI网络),但如果有4个或更多处理器,它通常在几分钟内完成。我目前正在尝试用2个处理器启动Web服务,我一直收到以下消息:
Application '/LM/W3SVC/1/ROOT' with physical root 'C:\inetpub\wwwroot\' failed to load coreclr. Exception message: Managed server didn't initialize after 120000 ms.
经过一番搜索,我发现这与IIS属性有关:startupTimeLimit。因此,我进入IIS,找到应用程序池并更改值:
IIS AppPool settings
但这并没有改变结果。另外,我很怀疑,因为AppPool设置的默认值是90秒,而startupTimeLimit的文档说默认值是120秒,这与错误消息相对应。
如何告诉IIS不要关闭长时间运行的初始化进程?

vuktfyat

vuktfyat1#

在web.config文件中,找到aspNetCore部分,可以使用以下属性在此处设置超时限制:* * 启动时间限制**

<aspNetCore processPath="dotnet" startupTimeLimit="340" hostingModel="inprocess" >

默认值= 120,最大值= 3600,最小值= 0
摘自文件:
可选整数属性。
模块等待可执行文件启动侦听端口的进程的持续时间(秒)。如果超过此时间限制,模块将终止该进程。
托管进程内时:该进程不会重新启动,也不使用rapidFailsPerMinute设置。
承载进程外时:该模块在收到新请求时尝试重新启动进程,并在收到后续传入请求时继续尝试重新启动进程,除非应用在最后一分钟内未能启动rapidFailsPerMinute次数。
值0(零)不被视为无限超时。

相关问题