2

TFS 2012 サーバーにインストールされた TFS API を使用するカスタム Web サービスがあります。TFS サーバーを 2010 から 2012 にアップグレードした後、次のコード行は、サービスを呼び出すたびにユーザーに対して実行するのに 20 ~ 30 秒かかります。

WorkItemStore ストア = tfsCollection.GetService();

アップグレード前は、この Web サービスのパフォーマンスは良好でした。

このような TFS 2012 API でパフォーマンスの問題を経験した人はいますか? このパフォーマンスの問題を解決するための提案はありますか?

キャッシュ設定 WorkItemTrackingCacheRoot が構成されています。

4

1 に答える 1

1

MS サポートと協力して解決策を見つけました。問題は、IIS 7 でデフォルトの .NET 偽装を使用していたことにありました。各ユーザーは、すべての TFS 非 WIT のもの (ロケーション サービス ファイルなど) の一時キャッシュを取得しており、呼び出しごとに再生成されていました。デフォルトの .NET 偽装を直接使用するのをやめ、代わりに TFS 偽装の使用を開始しました。これは、アプリケーション プール ユーザー (サービス アカウント) が一度作成された一時キャッシュを取得しているため、機能しました。各ユーザーの ID は、TFS WIT 関連の呼び出しに渡されます。

TFS 偽装の詳細については、次のブログ投稿を参照してください: http://blogs.msdn.com/b/taylaf/archive/2009/12/04/introducing-tfs-impersonation.aspx

于 2013-08-06T03:31:21.750 に答える