Sitecore页面编辑器在生产服务器中的加载速度非常慢

Sitecore页面编辑器在生产服务器中的加载速度非常慢,sitecore,sitecore6,page-editor,Sitecore,Sitecore6,Page Editor,在我们的QA环境和prod环境中,我们有相同的部署,但不同的服务器环境。。 在PROD环境中,当我登录到页面编辑器时,页面编辑器功能区会持续加载4分钟。一旦加载,它就可以正常工作。但如果我再次导航到另一个页面,功能区将加载4分钟 在QA服务器中,情况很好,这些部署彼此相同。只是想知道为什么PROD-env的速度很慢 有什么想法吗 Sitecore版本6.6 日志说 ManagedPoolThread #16 08:51:27 INFO Job ended: AllClassifieds.Web

在我们的QA环境和prod环境中,我们有相同的部署,但不同的服务器环境。。 在PROD环境中,当我登录到页面编辑器时,页面编辑器功能区会持续加载4分钟。一旦加载,它就可以正常工作。但如果我再次导航到另一个页面,功能区将加载4分钟

在QA服务器中,情况很好,这些部署彼此相同。只是想知道为什么PROD-env的速度很慢

有什么想法吗

Sitecore版本6.6

日志说

ManagedPoolThread #16 08:51:27 INFO  Job ended: AllClassifieds.Web.Extensions.Agents.WebPublisher (units processed: )
1372 08:51:54 ERROR A potentially dangerous Request.Form value was detected from the client (leftpane_0$hdnFSClientState="<fsclientstate></fsc...").
Exception: System.Web.HttpRequestValidationException
Message: A potentially dangerous Request.Form value was detected from the client (leftpane_0$hdnFSClientState="<fsclientstate></fsc...").
Source: System.Web
   at System.Web.HttpRequest.ValidateString(String value, String collectionKey, RequestValidationSource requestCollection)
   at System.Web.HttpRequest.ValidateHttpValueCollection(HttpValueCollection collection, RequestValidationSource requestCollection)
   at System.Web.HttpRequest.get_Form()
   at Sitecore.Pipelines.PreprocessRequest.SuppressFormValidation.Process(PreprocessRequestArgs args)

此错误会重复几分钟,直到页面编辑器加载。

我认为性能问题与问题中包含的验证异常无关。我认为,但这只是猜测,QA和PROD环境的速度之间的原因是PROD环境中的项目数量

根据我的经验,我知道页面编辑器中的“我的项目”功能区按钮有时会出现问题。它显示锁定到当前用户的项目数,对于每次重新加载功能区,它会进行另一次查询以获取所有这些项目

可能尝试删除此按钮登录core数据库并查找/sitecore/content/Applications/WebEdit/Ribbons/WebEdit/Page Editor/Edit/My Items,看看是否有帮助


如果没有,我建议使用一些分析工具,比如你可以下载10天免费试用版,看看它是否能找到问题的地方

我认为性能问题与问题中包含的验证异常无关。我认为,但这只是猜测,QA和PROD环境的速度之间的原因是PROD环境中的项目数量

根据我的经验,我知道页面编辑器中的“我的项目”功能区按钮有时会出现问题。它显示锁定到当前用户的项目数,对于每次重新加载功能区,它会进行另一次查询以获取所有这些项目

可能尝试删除此按钮登录core数据库并查找/sitecore/content/Applications/WebEdit/Ribbons/WebEdit/Page Editor/Edit/My Items,看看是否有帮助


如果没有,我建议使用一些分析工具,比如你可以下载10天免费试用版,看看它是否能找到问题的地方

是的,两年后仍然相关

至少在Sc8第4版中

WebEdit.ShowNumberOfLockedItemsOnButton不再使用。它仍然存在于代码中,但没有任何用途。设置时不会影响此问题

因此,另一种解决方案是将amountems设置为0并注释掉:

var amountOfLockedItems = context.app.canExecute("ExperienceEditor.MyItems.Count", context.currentContext);
在MyItems.js中。或者如前所述,只需隐藏/擦除核心数据库上的按钮


我猜Sitecore不想在索引上运行此查询,因为这对用户来说太不准确了,但也许他们可以稍微优化一下数据库查询?我们有超过9000个,抱歉200000个项目,需要整整一分钟才能为用户找到所有锁定的项目

是的,两年后仍然相关

至少在Sc8第4版中

WebEdit.ShowNumberOfLockedItemsOnButton不再使用。它仍然存在于代码中,但没有任何用途。设置时不会影响此问题

因此,另一种解决方案是将amountems设置为0并注释掉:

var amountOfLockedItems = context.app.canExecute("ExperienceEditor.MyItems.Count", context.currentContext);
在MyItems.js中。或者如前所述,只需隐藏/擦除核心数据库上的按钮


我猜Sitecore不想在索引上运行此查询,因为这对用户来说太不准确了,但也许他们可以稍微优化一下数据库查询?我们有超过9000个,抱歉200000个项目,需要整整一分钟才能为用户找到所有锁定的项目

您是否看到任何长时间运行的日志条目?链接此:警告长时间运行操作:getChromeData Pipeline您是否看到任何长时间运行操作的日志条目?链接:警告长时间运行操作:getChromeData pipelineAs Maras说,“我的项目”按钮在所有项目中循环,并检查是否已锁定它。还有一个web.config设置可以禁用此功能:WebEdit.ShowNumberOfLockedItemsOnButton。正如Maras所暗示的,它可能也值得研究不需要编辑的控件。将其设置为不可编辑将大大提高性能,这对我来说是一个很大的解脱。谢谢你,玛拉斯。你帮我省了一天时间。任何显示锁定项目或处于特定工作流状态的项目的指示器都会对性能造成不利影响。这包括Maras建议您关闭的按钮,以及树左侧的排水沟指示器。你甚至可以考虑为核心数据库中的每个人关闭它们,这样就没有人看到它们了。正如Maras所说,“我的项目”按钮通过所有项目循环,并检查是否锁定了它。还有一个web.config设置可以禁用此功能:WebEdit.ShowNumberOfLockedItemsOnButton。正如Maras所暗示的,它可能也值得研究不需要编辑的控件。设定
不可编辑也会大大提高性能。太棒了,这让我松了一口气。谢谢你,玛拉斯。你帮我省了一天时间。任何显示锁定项目或处于特定工作流状态的项目的指示器都会对性能造成不利影响。这包括Maras建议您关闭的按钮,以及树左侧的排水沟指示器。你甚至可以考虑为核心数据库中的每个人关闭它们,所以没有人看到它们。根据你的SITECORE版本,有新的方法来解决这个问题:根据SITECORE的版本,有新的方法来解决这个问题: