2013-03-20 83 views
2

我有一個使用TFS API安裝在TFS 2012服務器上的自定義Web服務。在將TFS服務器從2010年升級到2012年後,下列代碼行需要20到30秒才能在每次調用服務時爲我的用戶執行:TFS 2012 API - .GetService <WorkItemStore>()慢

WorkItemStore store = tfsCollection.GetService();

升級之前,此Web服務的性能很好。

有沒有人遇到像這樣的TFS 2012 API的性能問題?有沒有人有解決這個性能問題的建議?

我確實已經配置了緩存設置WorkItemTrackingCacheRoot。

回答

1

我們與MS支持人員一起尋找解決方案。問題是在IIS 7中使用默認的.NET模擬。每個用戶都獲得了所有TFS非WIT內容(位置服務文件等)的臨時緩存,並且每次調用都會重新生成。我們直接停止使用默認的.NET模擬,而是開始使用TFS模擬。這是因爲應用程序池用戶(服務帳戶)正在獲取一次創建的臨時緩存。每個用戶的身份都被傳遞給TFS WIT相關的調用。

有關TFS模擬的詳細信息,請參閱此博客文章:http://blogs.msdn.com/b/taylaf/archive/2009/12/04/introducing-tfs-impersonation.aspx