2

我有一个使用安装在 TFS 2012 服务器上的 TFS API 的自定义 Web 服务。在将 TFS 服务器从 2010 年升级到 2012 年之后,我的用户每次调用该服务需要 20 到 30 秒来执行以下代码行:

WorkItemStore store = tfsCollection.GetService();

在升级之前,此 Web 服务的性能很好。

有没有人遇到过这样的 TFS 2012 API 性能问题?有没有人有解决这个性能问题的建议?

我确实配置了缓存设置 WorkItemTrackingCacheRoot。

4

1 回答 1

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

于 2013-08-06T03:31:21.750 回答