2015-06-22 28 views
0

性能問題我正在使用TaxonomyManager gettree(path)方法在我的c#代碼中獲取特定的樹層次結構,但它需要超過3分鐘才能得到結果,因爲這個網站是需要很長時間才能加載。如何減少加載網站的時間,是否有任何其他方式可以用來從Ektron獲取層次結構。TaxonomyManager.GetTree(path)

+0

有沒有其他的選擇? –

回答

0

我們有這個完全相同的問題,實際上Ektron支持幫助解決它。

現在,無論何時使用分類法,我們都會將它們緩存在服務器端以避免性能下降。類似於

string cacheKey = "Something unique for your situation"; 
TaxonomyData taxonomyData; 

if (Ektron.Cms.Context.HttpContext.Cache[cacheKey] == null) 
{ 
    // Pull taxonomy data and store in cache. 
    Ektron.Cms.Context.HttpContext.Cache.Insert(cacheKey, taxonomyData); 
} 
else 
{ 
    taxonomyData = (TaxonomyData)Ektron.Cms.Context.HttpContext.Cache[cacheKey]; 
} 

既然您已經知道如何將TaxonomyData拉出來,我們不存儲分類數據,而是將我們創建的對象與分類數據一起存儲,因此只需緩存您需要的任何內容,然後就可以避免大多數情況下的性能下降。

我不記得在哪裏設置ektron緩存時間,無論它在web.config中還是在WorkArea中。 Ektron支持人員表示使用Ektron緩存,但不知道使用常規緩存會產生多大的差異。