首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >DLL部署会增加Sitecore站点的启动时间。

DLL部署会增加Sitecore站点的启动时间。
EN

Stack Overflow用户
提问于 2013-11-18 10:41:46
回答 3查看 2.1K关注 0票数 0

我们有一个Sitecore 6.6实例,它用于托管多个站点。它托管在IIS 7.5中。我们开发了定制的Sitecore子布局和管道,用于跨网站使用。

当在bin文件夹中部署任何dll时,Sitecore站点需要很长时间才能启动(8-10分钟)。但是,当IIS被重置时,启动时间更短(30-40秒)。

应用程序启动时间比IIS重置更多地用于DLL部署的原因是什么?有什么建议可以改善DLL部署的应用程序启动时间吗?

更新1:部署后的启动时间会影响我们的构建过程,因为它会增加所有环境(DEV、STG、LIVE)中的总体构建部署时间。

w3wp过程的分析快照显示了两个主要的热点:

  1. Sitecore.Threading.Semaphore.P
  2. Sitecore.IO.FileWatcher.Worker

更新2:在遵循VicentUpdate2的部署后,w3wp过程的分析快照显示了主要的热点

Sitecore.Web.UI.WebControls.Sublayout.GetUserControl(Page)

对内存转储的进一步分析表明,线程正在等待新部署的DLL的JIT编译。

EN

回答 3

Stack Overflow用户

发布于 2013-11-19 10:34:37

对我来说,就好像你的问题不是开始了,而是关闭了。当您复制dll时,文件收集程序将检测到bin文件夹中的更改(将其写入日志)并尝试关闭sitecore (也会记录此日志),但如果sitecore的任务运行在不同的线程上(索引、发布、计划任务等),则信号量将等待其他线程正常完成。这就是为什么当您“杀死”进程,而不等待线程完成sitecore快速启动。我在我的环境中也有这种行为,所以当我需要快速重新启动时,我复制dll,等待几秒钟,所以至少sitecore尝试关闭,然后我杀死了与我的池相关的w3p.exe。我不会建议任何人这么做,但我没有办法“仁慈”地杀死这些线程.也许有人知道如何“很好地强迫关闭.”

票数 3
EN

Stack Overflow用户

发布于 2013-11-18 10:54:17

这个亚历克斯·夏巴的博客文章有一些有趣的指针来改进Sitecore的启动时间(但如果您谈论的是活动环境而不是DEV环境,则可能不适用)。

如果还没有检查预取缓存并运行性能调整指南,也可能是值得的。

票数 2
EN

Stack Overflow用户

发布于 2013-11-20 12:43:28

我以前见过这个问题。它发生在6.5版上,但从那以后我就没有在发行说明中看到过对它的修正。

Sitecore支持对此有一个修补程序--它确实与他们的文件系统监视任务有关。您需要向他们出示一张票,以获得修补程序或其他信息。

我对这个问题的支持票参考是370593。修补程序有323775期。如果您在支持票中提到了这一点,它应该会稍微加快进程--如果这确实是您正在经历的问题。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20045738

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档