我們有一個大的xslt可以渲染整個商店區域,包括產品,製造商,並根據價格和cateogry進行過濾。 我使用sitecore作爲CMS,並遇到緩存問題。我有大約9000個項目,有些頁面需要多達20個才能渲染。 將xslt分成更小的部分會更好嗎?它會提高速度嗎?一個大的xslt在更小的顆粒狀的區域
我認爲xslt引擎sitecore使用的稱爲Nexus。
更新:
我認爲我們需要優化xslt。即使有大約9k項目,sitecore分析器顯示我們實際上遍歷了大約250k項目,同時進行各種檢查。
我們有一個大的xslt可以渲染整個商店區域,包括產品,製造商,並根據價格和cateogry進行過濾。 我使用sitecore作爲CMS,並遇到緩存問題。我有大約9000個項目,有些頁面需要多達20個才能渲染。 將xslt分成更小的部分會更好嗎?它會提高速度嗎?一個大的xslt在更小的顆粒狀的區域
我認爲xslt引擎sitecore使用的稱爲Nexus。
更新:
我認爲我們需要優化xslt。即使有大約9k項目,sitecore分析器顯示我們實際上遍歷了大約250k項目,同時進行各種檢查。
通過應用除分割XSLT文件之外的其他更改,您可能會獲得更好的性能。在沒有看到XSLT是很難發現的瓶頸,但你會發現這裏的XSLT性能的一些最佳做法:
http://www.dpawson.co.uk/xsl/sect4/N9883.html#d15756e150
此外,它可能是非常有幫助在這種情況下要使用XSLT探查。
一些性能技巧還取決於您正在使用的引擎,因此一些其他信息也可能在此處有用。
如果您可以發佈您的XSLT代碼,我可能會幫助您找到可能的瓶頸。
聽起來像問題是使用sitecore而不是XSLT(我已經對K行進行了10次更快的轉換),但是我建議一般情況下分割以啓用代碼重用。
這裏有兩個不同的問題:
首先應該做的一個最佳實踐,後者應該照顧你正在獲得的延長渲染時間
分離一個巨大的r如果使用Sitecore緩存,則可以使用較小的緩存。有多個渲染將允許將每個緩存設置應用於每個。
絕對可以用作有意義的小型XSLT。這只是良好的做法,不能傷害表現。