每次发布内容时回收应用程序池

时间:2015-06-17 13:42:04

标签: .net iis lucene umbraco application-pool

我正在使用Umbraco网站,我有自定义部分,因此使用application.config和trees.config文件。

我遇到一个问题,即每次发布内容时,应用程序池都会回收以下消息:

w3wp.exe Information: 0 : 

_shutDownMessage=CONFIG change
HostingEnvironment initiated shutdown
CONFIG change
HostingEnvironment caused shutdown

_shutDownStack=   at System.Environment.GetStackTrace(Exception e, Boolean needFileInfo)
   at System.Environment.get_StackTrace()
   at System.Web.Hosting.HostingEnvironment.InitiateShutdownInternal()
   at System.Web.HttpRuntime.ShutdownAppDomain(String stackTrace)
   at System.Web.HttpRuntime.OnConfigChange(String message)
   at System.Configuration.BaseConfigurationRecord.OnStreamChanged(String streamname)
   at System.Web.DirectoryMonitor.FireNotifications()
   at System.Web.Util.WorkItem.CallCallbackWithAssert(WorkItemCallback callback)
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.QueueUserWorkItemCallback.System.Threading.IThreadPoolWorkItem.ExecuteWorkItem()
   at System.Threading.ThreadPoolWorkQueue.Dispatch()

_shutdownReason=ConfigurationChange
    DateTime=2015-06-17T13:01:24.0413457Z

我尝试将“禁用回收配置更改”选项设置为true,但没有任何更改。我想这是因为应用程序池不再循环使用,但app-domain仍然可以。

Advanced settings for my IIS app pool

我已经看过这个问题了,即使建议很好,也没有帮助我。 Recycling app pool each time a change has been made

我有一些想法,可能是Umbraco“写”到应用程序& trees.config作为这些的时间戳在我得到以下消息的同时更新:

_shutdownReason=ConfigurationChange

正如Eric Gaspard在这个问题上所说的那样“applications.config & trees.config cannot be Read-only?”umbraco打开这些具有写访问权限的配置文件。也许这会产生一些影响?

其他信息:

  • 服务器是2012

底线,我的问题是:

有什么方法可以阻止umbraco触摸配置文件,或者在更改配置文件时停止我的app域回收?

1 个答案:

答案 0 :(得分:1)

当您经常更新App_Data中的文件时(Umbraco会这样做),频繁的应用程序池回收会出现问题。今天早上发布了MS HotFix:see MS download here。听起来这可能是你一直存在的问题。