我们注意到在Umbraco 7.6.3上安装Forms 6.0.1并使用App_Data的虚拟目录导致CMS运行速度极慢。我们的一些客户拥有负载均衡的实时环境,并为App_Data,媒体等创建了虚拟目录。我们已将其站点从4.8.0升级到7.6.3,安装Forms并部署到演示环境后注意到CMS永远都在做任何事情。我们多年来一直在各种版本的Umbraco上使用App_Data的虚拟目录,从未遇到过这种方法的任何问题。
为了消除问题不是由于升级中的任何问题,我们可以按照以下步骤重新创建问题:
如果我们从IIS中删除虚拟目录或在web.config中设置fcnmode =“disabled”,CMS将再次执行。从我读到的设置fcnmode到禁用将停止文件更改通知,但这是一个缺点是应用程序池将不会被回收。这可能是我们必须要忍受的事情,但我很好奇Form正在做什么导致这种情况?表单之前已添加到App_Plugin文件夹而不是App_Data,是否有原因?
Umbraco Log文件大小显着增加,包含以下内容:
2017-06-27 09:37:12,192 [P23168/D99/T80] INFO Umbraco.Core.UmbracoApplicationBase - Application shutdown. Details: ConfigurationChange
_shutDownMessage=CONFIG change
HostingEnvironment initiated shutdown
CONFIG change
CONFIG change
CONFIG change
CONFIG change
CONFIG change
CONFIG change
CONFIG change
CONFIG change
CONFIG change
CONFIG change
CONFIG change
CONFIG change
CONFIG change
CONFIG change
CONFIG change
CONFIG change
CONFIG change
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.Hosting.HostingEnvironment.InitiateShutdownWithoutDemand()
at System.Web.HttpRuntime.ShutdownAppDomain(String stackTrace)
at System.Web.Configuration.HttpConfigurationSystem.OnConfigurationChanged(Object sender, InternalConfigEventArgs e)
at System.Configuration.Internal.InternalConfigRoot.OnConfigChanged(InternalConfigEventArgs e)
at System.Configuration.BaseConfigurationRecord.OnStreamChanged(String streamname)
at System.Web.DirectoryMonitor.FireNotifications()
at System.Web.Util.WorkItem.CallCallbackWithAssert(WorkItemCallback callback)
at System.Web.Util.WorkItem.OnQueueUserWorkItemCompletion(Object state)
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()
答案 0 :(得分:0)
我认为问题是正在从物理路径而不是虚拟路径读取此文件。 \ App_Data文件\ TEMP \ formsupdate
如果您在物理位置和虚拟位置都包含此文件,则应解决此问题。
我在这里报告了这个问题:http://issues.umbraco.org/issue/CON-1456