我偶尔会收到以下事件,这些事件导致应用程序池被回收:
_shutDownMessage=CONFIG change
HostingEnvironment initiated shutdown
Overwhelming Change Notification in
Change Notification for critical directories.
Overwhelming Change Notification in App_LocalResources
Change Notification for critical directories.
Overwhelming Change Notification in App_Browsers
Change Notification for critical directories.
Overwhelming Change Notification in App_Code
Change Notification for critical directories.
Overwhelming Change Notification in App_WebReferences
Change Notification for critical directories.
Overwhelming Change Notification in App_GlobalResources
有什么办法可以防止这些更改回收应用程序池?
我们将在几天后投入生产,因此我现在需要一个快速的解决方案,直到我们有时间稍后解决导致此问题的原因。
最佳答案
这可能是由ASP.Net中的不同FCN模式引起的,并且一个特定的MS错误也使这种情况发生。 FCN(文件更改通知)在ASP.Net级别和IIS级别均受控制。
您可以在web.config中更改fcnMode来进行更少的监视,我们现在将“单一”模型应用于我们的大多数网站,尤其是由于基于网络的文件存储而在Azure上运行时。但是,要更改IIS文件,要注意更改是另一回事。
这是有关FCN及其不同模式的详细信息:http://shazwazza.com/post/all-about-aspnet-file-change-notification-fcn/
这是IIS FCN问题的MS修补程序(出于某些疯狂的原因是可选的):https://support.microsoft.com/en-us/kb/911272
这将讨论如何在有权访问的情况下禁用IIS的FCN:http://imageresizing.net/docs/fcnmode
还值得注意的是,将web.config中的fcnMode更改为Single不会对任何IIS虚拟文件夹产生影响,只能完全禁用fcn才能对虚拟文件夹产生任何影响。