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

时间:2013-09-19 00:21:45

标签: 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.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)

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

2 个答案:

答案 0 :(得分:8)

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

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

enter image description here

也许尝试删除此按钮(登录核心数据库并查找 / sitecore / content / Applications / WebEdit / Ribbons / WebEdit / Page Editor / Edit / My Items )并看看这是否有帮助。

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

答案 1 :(得分:1)

是的,两年后仍然相关。

至少在Sc8 rev 4中。

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

所以另一个解决方案是将amountOfLockedItems设置为0并注释掉:

var amountOfLockedItems = context.app.canExecute("ExperienceEditor.MyItems.Count", context.currentContext);

在MyItems.js中。或者如上所述,只需隐藏/擦除核心数据库上的按钮即可。

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