Application Request Routing のキャッシュ ノードのウォームアップ

公開日: 2009 年 7 月 16 日 (作業者: wonyoo (英語))

更新日: 2009 年 9 月 23 日 (作業者: wonyoo (英語))

目標

予想される要求に備えて事前に Application Request Routing (ARR) のキャッシュ ノードを正しくキャッシュすること (キャッシュ ノードを "ウォームアップ" すること)。

ARR には、キャッシュをウォームアップする方法が用意されています。ARR は区切り形式の URL リスト (1 行に 1 つの URL) が含まれるファイルを高レベルで使用します。ARR は、URL が正しくキャッシュされるように、URL リストに適切な URL 書き換え規則と CARP を適用します。ARR は次の 2 種類のファイルを使用できます。

  1. ファイル システム上にあるファイル。
  2. Web サーバーにホストされ、HTTP または HTTPS 経由でアクセス可能なファイル。

メモ: ファイル内のいずれかの URL が安全な (HTTPS) サイト上のコンテンツを参照している場合、ARR キャッシュ ノード自体を HTTPS 用に構成する必要があります。 ARR は GET 要求を localhost に送信し、事前キャッシュのオブジェクトが適切にキャッシュされるように URL 書き換え規則および CARP を処理します。

この機能は以下の場合に有用です。

  1. 予想される要求に備えて、事前にコンテンツをキャッシュする。
  2. コンテンツの人気の高さに関係なく、常にキャッシュされるようにする。

この機能を使用して、すべてのキャッシュ ノード、つまり子キャッシュ層および親キャッシュ層で、または、親キャッシュ層のみで、事前キャッシュすることができます。

ARR は一括操作に URL リストが含まれるファイルを使用するため、このチュートリアルを進めるにはこのファイルが必要です。

必要条件

この記事は、ARR の機能全体を熟知し、ディスク キャッシュを用いる ARR を展開、構成する方法を理解していることを前提としています。まだ習得していない場合は、以下のチュートリアルを確認してから進めることを強くお勧めします。

Application Request Routing Version 2 RC がインストールされていない場合は、以下の場所からダウンロードすることができます。

  • Microsoft Application Request Routing Version 2 for IIS 7.0 RC (x86) は こちら からダウンロードできます。
  • Microsoft Application Request Routing Version 2 for IIS 7.0 RC (x64) はこちらからダウンロードできます。

このドキュメントに示された手順に従って、ARR Version 2 RC をインストールしてください。

ステップ 1: すべて の ARR キャッシュ ノードをウォームアップする (子キャッシュ層 および 親キャッシュ層)

子キャッシュ ノードおよび親キャッシュ ノードにコンテンツを事前キャッシュするには、子キャッシュ ノードで事前キャッシュ操作を実行します。

UI を使用して、ARR キャッシュ ノードをウォームアップするには:

  1. IIS マネージャーを起動します。

  2. キャッシュのウォームアップ機能はサーバー レベルで使用することができます。 サーバーのルートを選択し、展開します。

    Ee886296.serverlevel(ja-jp,TechNet.10).jpg

  3. [Application Request Routing キャッシュ] をダブルクリックします。

  4. [操作] ウィンドウで、[オブジェクトの事前キャッシュ...] をクリックします。

    Ee886296.u-actions(ja-jp,TechNet.10).jpg

  5. [オブジェクトの事前キャッシュ] ダイアログ ボックスで、URL リストが含まれるファイルの場所とログ ファイルの場所を入力します。両方とも指定する必要があります。 下の例では、次の値を使用します。

        c:\mydocuments\warmup.txt
        c:\mydocuments\warmup.log

    Ee886296.precacheupdated(ja-jp,TechNet.10).jpg

    ファイル システム上のファイルの場所ではなく、URL を指定することができます。 たとえば、http://mytestserver/warmup.txt を使用することができます。

    メモ: warmup.txt ファイルには、1 行に 1 つの URL が指定されている必要があります。また、記事「CDN での Application Request Routing の展開」の説明に従ってホスト名の書き換えを行う場合、このファイル内の URL のドメイン名は、キャッシュ ノードが受信する予定のドメイン名に一致している必要があります。ARR は正しくコンテンツをキャッシュするために URL を処理してホスト名を書き換え、CARP を適用することになるので、URL のドメイン名は書き換え前のものであることが必要です。

    この機能はスクリプト化が可能です。したがって、タスク スケジューラーを使用してスケジュールすることができます。

ステップ 2: 機能を確認する

ウォームアップ機能が正しく動作しているかどうかを確認するには、ステップ 1 で指定したログ ファイルを調べます。

  1. ログ ファイルの場所を指定します。

  2. メモ帳を使用してログ ファイルを開きます。下の例は、ログ ファイルの内容を示すものです。

    Ee886296.warmuplog(ja-jp,TechNet.10).jpg

  3. 別の方法として、IIS マネージャーで ARR の参照機能を使用して、キャッシュされたコンテンツを確認することもできます。参照機能の詳細については、「Application Request Routing のディスクにキャッシュされたコンテンツの参照」の記事を参照してください。

ステップ 3: 親キャッシュ層 のみ で ARR キャッシュ ノードをウォームアップする

場合によっては、親キャッシュ層のみで事前キャッシュを行うほうが有益である場合があります。 たとえば、離れて配置されている親キャッシュ ノードが特定区域の子キャッシュ ノードをサポートしている場合です。 このような環境では、親キャッシュ ノードのみで事前キャッシュするだけで十分であり、子キャッシュ ノードがコンテンツを事前キャッシュするのが早すぎないようにすることができます。

親キャッシュ層のみで事前キャッシュする手順は、上のステップ 1 で概説した手順とほぼ同じです。主な違いを次に示します。

  • 事前キャッシュ操作は、親キャッシュ ノードで実行します (ステップ 1 では子キャッシュ ノードで実行しています)。
  • 親キャッシュ ノードに対して CARP を正しく指定するため、追加情報を指定します。

UI を使用して、ARR キャッシュ ノードをウォームアップするには:

  1. IIS マネージャーを起動します。

  2. キャッシュのウォームアップ機能はサーバー レベルで使用することができます。 サーバーのルートを選択し、展開します。

    Ee886296.serverlevel(ja-jp,TechNet.10).jpg

  3. [Application Request Routing キャッシュ] をダブルクリックします。

  4. [操作] ウィンドウで、[オブジェクトの事前キャッシュ...] をクリックします。

    Ee886296.u-actions(ja-jp,TechNet.10).jpg

  5. [オブジェクトの事前キャッシュ] ダイアログ ボックスで、上記ステップ 1 で必要とされた情報を指定する以外に、[このサーバーではすべてのコンテンツをキャッシュしない] チェック ボックスをオンにし、ダイアログ ボックスをさらに展開します。

    Ee886296.precacheparent(ja-jp,TechNet.10).jpg

    ピア サーバーの表に、事前キャッシュ操作を実行するサーバーを含め、ARR サーバーの名前を入力します。入力すると、[このサーバーのアドレス] ドロップダウン リストに自動的にその内容が追加されます。この操作を実行するサーバーの名前を選択します。

    重要: ピア サーバーの名前およびドロップダウン リストのサーバー一覧は、CARP を正しく処理するために必要です。サーバーの名前は、サーバー ファーム内の子キャッシュ ノードから参照される名前と完全に一致している必要があります。 CARP では、サーバーの名前を考慮するためにハッシュ アルゴリズムが使用されます。したがって、同じハッシュ値が得られるようにするには、サーバーの名前が完全に一致している必要があります

まとめ

これで、URL リストが含まれるファイルを使用して ARR キャッシュ ノードを正常にウォームアップすることができました。

その他の ARR Version 2 RC のチュートリアルについては、この記事にあるドキュメントを参照してください。