一个大的xslt比更小的更细粒的

时间:2008-12-10 11:38:00

标签: xslt sitecore

我们有一个大的xslt,它可以呈现整个商店区域,包括产品,显示器,并根据价格和类别进行过滤。 我使用sitecore作为CMS,我遇到缓存问题。我有大约9000个项目,有些页面需要多达20秒才能呈现。 将xslt拆分成更小的部分会更好吗?它会提高速度吗?

我认为xslt引擎sitecore使用的名为Nexus。

更新

我认为我们需要优化xslt。即使有大约9k项目,sitecore分析器显示我们实际上在进行各种检查时穿越了大约25万件物品。

5 个答案:

答案 0 :(得分:4)

通过应用除拆分XSLT文件之外的其他更改,您可能会获得更好的性能。如果没有看到XSLT,很难发现瓶颈,但您会在这里找到一些XSLT性能的最佳实践:

http://www.dpawson.co.uk/xsl/sect4/N9883.html#d15756e150

此外,在这种情况下使用XSLT分析器可能非常有用。

某些性能技巧也取决于您使用的引擎,因此一些其他信息也可能在此处有用。

如果您可以发布您的XSLT代码,我可能会帮助您找到可能的瓶颈。

答案 1 :(得分:1)

听起来问题是sitecore而不是XSLT(我已经对10行的K行进行了更快的转换),但我建议一般拆分以启用代码重用。

答案 2 :(得分:1)

如果使用Sitecore缓存,将一个巨大的渲染分成较小的渲染将有所帮助。具有多个渲染将允许将单独的缓存设置应用于每个。

答案 3 :(得分:0)

这里有两个不同的问题:

  • 分离XSLT文件以提高可读性,可维护性和代码重用
  • 在XSLT翻译上提高性能

第一个应该作为最佳实践来完成,后者应该处理你获得的延长渲染时间

答案 4 :(得分:0)

绝对使用有意义的小型XSLT。这只是一种很好的做法,不会影响性能。