アプリケーション層サーバーのキャッシュ設定の変更

アプリケーション層サーバーでバージョン コントロールの対象であるファイルのキャッシュ設定を変更することにより、Team Foundation Server (TFS) の配置のパフォーマンスを向上させたり、そのバランスを取ることができます。 既定では、ユーザーがファイルをデータベースから直接ダウンロードする代わりに、キャッシュからすばやくダウンロードできるように、このキャッシュは有効になっています。 管理者は、インストール後にいつでもこのキャッシュの設定を変更できます。

以下の設定を変更できます。

  • 別のキャッシュ ルート フォルダーを指定する。

  • キャッシュから古いファイルを削除する制限を変更する。

アプリケーション層サーバーのインストール ディレクトリにあるバージョン管理の web.config ファイルを編集してこれらのタスクを実行できます。

注意

既定では、アプリケーション層のインストール ディレクトリは %programfiles%\Microsoft Team Foundation Server 12.0\Application Tier\Web Services です。

必要なアクセス許可

これらの手順を実行するには、Team Foundation のアプリケーション層サーバーの Administrators セキュリティ グループのメンバーである必要があります。

詳細については、Microsoft Web サイトを参照してください。

別のキャッシュ ルート フォルダーを指定するには

  1. アプリケーション層サーバーで、キャッシュ フォルダーを作成します。

    ローカル ディスク、UNC パス、またはマウントされたドライブにフォルダーを作成できます。 たとえば、次のようなフォルダーを作成します。

    d:\temp\cacheroot

    セキュリティに関するメモセキュリティに関するメモ

    キャッシュ フォルダーには暗号化されていない機密情報を格納します。したがって、アプリケーション層のサービス アカウント (TFSService) のみがこのフォルダーに対する変更のアクセス許可を持っていることを確認してください。

  2. フォルダーのショートカット メニューを開き、[プロパティ] をクリックします。

    フォルダーの [プロパティ] ダイアログ ボックスが開きます。

  3. [セキュリティ] タブの [編集] をクリックします。

    [アクセス許可] ダイアログ ボックスが開きます。

  4. [追加] をクリックします。

    [ユーザー、コンピューターまたはグループの選択] ダイアログ ボックスが表示されます。

  5. ローカル グループ TFS_APPTIER_SERVICE_WPG を追加し、[OK] をクリックします。

  6. [Modify] チェック ボックスをオンにし、他のチェック ボックスをすべてオフにして、[OK] を選択します。

  7. Windows エクスプローラー (またはファイル エクスプローラー) で、%programfiles%\Microsoft Team Foundation Server 2013\Application Tier\Web Services を参照します。

  8. テキスト エディターまたは XML エディターで web.config ファイルを開き、<appSettings> セクションを探します。

  9. 先ほど作成したフォルダーを指すように appSettings セクションに行を追加します。

    <add key="dataDirectory" value="NewCacheRootFolderLocation" />
    

    たとえば、前の例のようにハード ドライブの一時ディレクトリに cacheroot というキャッシュ ルート フォルダーを作成した場合は、次の行を追加します。

    <add key="dataDirectory" value="d:\temp\cacheroot" />
    
  10. web.config ファイルを保存して閉じます。

    注意

    パフォーマンスを最大にするには、古いキャッシュ フォルダーから新しいキャッシュ フォルダーにファイルをコピーします。

  11. コマンド プロンプト ウィンドウを開き、「iisreset」と入力し、Enter キーを押します。

  12. 古いキャッシュ ルート フォルダーを削除します。

    注意

    既定では、キャッシュ ルート フォルダーは %programfiles%\Microsoft Team Foundation Server 12.0\Version Control Proxy\Web Services\VersionControlProxy\Data にあります。

キャッシュからファイルを削除する制限の変更

アプリケーション層サーバーがファイルをキャッシュするために使用できる記憶域の容量の上限を変更できます。 この上限に達すると、クリーンアップ ルーチンは、最近要求されたファイルのための容量を確保するため、最も長い時間アクセスされていないファイルを削除します。

キャッシュから古いファイルを削除するための制限を変更するには

  1. アプリケーション層サーバーで、Windows エクスプローラー (ファイル エクスプローラー) を開き、\%programfiles%\Microsoft Team Foundation Server 12.0\Application Tier\Web Services を参照します。

  2. テキスト エディターまたは XML エディターで web.config ファイルを開き、<appSettings> 要素を探します。

  3. 次の要素のいずれかを追加します。

    • 利用可能なディスク領域の割合を指定し、この数値に達したときに古いファイルを削除するには、PercentageBasedPolicy 要素を追加します。 この要素の値には整数を指定する必要があります。

      たとえば、次の設定では、キャッシュが利用可能なディスク領域の 60% に達したときに古いファイルが削除されます。

      <add key="PercentageBasedPolicy" value="60" />
      
    • キャッシュの固定サイズを MB (メガバイト) 単位で指定し、この数値に達したときに古いファイルを削除するには、FixedSizeBasedPolicy 要素を追加します。 この要素の値には整数を指定する必要があります。

      たとえば、次の設定では、キャッシュのサイズが 500 MB に達したときに古いファイルが削除されます。

      <add key="FixedSizeBasedPolicy" value="500" />
      

      注意

      FixedSizeBasedPolicy 要素と PercentageBasedPolicy 要素の両方が指定されている場合、FixedSizeBasedPolicy 要素の値が使用され、PercentageBasedPolicy 要素の値は無視されます。

  4. web.config ファイルを保存して閉じます。

  5. コマンド プロンプト ウィンドウを開き、「iisreset」と入力し、Enter キーを押します。

古いファイルが削除されたときに解放するキャッシュの量を変更するには

  1. アプリケーション層サーバーで、Windows エクスプローラー (ファイル エクスプローラー) を開き、%programfiles%\Microsoft Team Foundation Server 12.0\Application Tier\Web Services\ を参照します。

  2. テキスト エディターまたは XML エディターで web.config ファイルを開き、<appSettings> 要素を探し、CacheDeletionPercent 要素を追加します。

    たとえば、次の設定では、古いファイルが削除されたときにキャッシュの 50% が解放されます。

    <add key="CacheDeletionPercent" value="50" />
    
  3. web.config ファイルを保存して閉じます。

  4. コマンド プロンプト ウィンドウを開き、「iisreset」と入力し、Enter キーを押します。

参照

概念

Team Foundation Server におけるサービス アカウントと依存関係