App Pool的回收会杀死Kestrel,但不会重启

时间:2017-11-27 11:15:32

标签: iis asp.net-core asp.net-core-2.0 hangfire kestrel-http-server

背景

在IIS 8+上托管(非核心)ASP.net网站时,可以利用IIS Application Initialization Module主动初始化('预热')Web应用程序当IIS启动时(或者,我相信,当应用程序池被回收时)。据我所知,在IIS上托管.net Core应用程序时,这是不可能的。

我还注意到,当在IIS上托管.net Core(1.1)应用程序时,dotnet.exe进程(Kestrel)将作为应用程序池回收事件的一部分被终止。然后,只有在发出第一个新请求时,才会重新启动此过程。

我问下面的问题,因为我正在使用Hangfire(核心版)和一个经常性的后台工作,并希望在没有人长时间访问该网站时仍然执行此工作。

问题

  1. 在IIS上托管 Core 应用时,使用预定应用池回收功能有什么意义吗?我可以找到的唯一参考was an issue on the Github repo

  2. 如果是这样,是否可以在回收应用程序池后自动初始化站点或启动Kestrel(默认情况下,这通常每29小时发生一次)。

0 个答案:

没有答案