Sun Java System Web Proxy Server 4.0.8 管理ガイド

第 12 章 キャッシュ

この章では Sun Java System Web Proxy Server がドキュメントをキャッシュするしくみを説明します。また、オンラインページを使用してキャッシュを設定する方法についても説明します。

この章の内容は次のとおりです。

キャッシュのしくみ

キャッシュを利用すると、ネットワークのトラフィックが減少し、プロキシサーバーを使用するクライアントへの応答時間は、リモートサーバーに直接アクセスしないため短縮されます。

クライアントがプロキシサーバーから Web ページまたはドキュメントを要求する場合、プロキシサーバーはクライアントにドキュメントを送信する間に、リモートサーバーのドキュメントをローカルのキャッシュディレクトリ構造にコピーします。

次の図に示すように、以前に要求したことがあり、プロキシのキャッシュにコピーされているドキュメントをクライアントが要求した場合、プロキシはドキュメントを再度リモートサーバーから取得するのではなく、キャッシュからドキュメントを返します。プロキシで、ファイルが最新の状態ではないと判断すると、リモートサーバーのドキュメントを更新し、キャッシュを更新してからドキュメントをクライアントに送信します。

図 12–1 プロキシのドキュメントの取得

ドキュメントを要求しているクライアントとキャッシュからドキュメントを送信しているプロキシサーバーを示す図

キャッシュ内のファイルは、Sun Java System Web Proxy Server のガベージコレクションユーティリティー (CacheGC) により自動的に管理されます。CacheGC は定期的にキャッシュを自動消去し、キャッシュが古いドキュメントでいっぱいにならないようにします。

キャッシュ構造について

キャッシュは 1 つ以上のパーティションから構成されます。概念上、パーティションとはキャッシュのために確保しておくディスク上のストレージ領域です。キャッシュを複数のディスクに分散させる場合、各ディスクに 1 つ以上のキャッシュパーティションを設定する必要があります。各パーティションは、個別に管理できます。つまり、ほかのすべてのパーティションとは別に各パーティションを有効化、無効化、および設定できます。

キャッシュされた大量のファイルを一箇所に保存すると、パフォーマンスが低下する場合があるため、各パーティションに複数のディレクトリ、またはセクションを作成してください。セクションは、キャッシュ構造内のパーティションの 1 つ下のレベルです。キャッシュ内には、パーティション全体で最大 256 のセクションを作成できます。キャッシュセクションの数は、必ず 2 の累乗 (1、2、4、8、16、...、256) にしてください。

キャッシュ構造の階層の最下位レベルはサブセクションです。サブセクションはセクション内のディレクトリです。各セクションは 64 のサブセクションから構成されます。キャッシュされたファイルは、キャッシュ内の最下位レベルであるサブセクションに格納されます。

次の図に、パーティションとセクションからなるキャッシュ構造の例を示します。この図では、キャッシュ全体を 3 つのパーティションに分割したキャッシュディレクトリ構造になっています。最初のパーティションには 4 つのキャッシュセクションが含まれ、2 番目の 2 つのパーティションにはそれぞれ 2 つのセクションが含まれます。

キャッシュの各セクションには、セクションを示す「s」とセクション番号が付けられています。3.4 というセクションの場合、3 はキャッシュセクションの数を表す 2 の累乗を示し (23 = 8)、4 はセクションの番号を意味します (8 つのセクションに 0 〜 7 のラベルが付けられる)。したがって、s3.4 はセクション 5/8 を意味します。

図 12–2 キャッシュ構造の例

すべてのキャッシュが 3 つのパーティションに分割されているキャッシュディレクトリの例を示す図

キャッシュへのファイルの分散

プロキシサーバーは特定のアルゴリズムを使用して、ドキュメントを格納するディレクトリを決定します。このアルゴリズムにより、ディレクトリ内でドキュメントを均等に分散させることができます。ディレクトリに大量のドキュメントを格納すると、パフォーマンスの問題が生じる傾向があるため、均等に分散することが重要です。

プロキシサーバーは RSA MD5 (Message Digest 5) アルゴリズムを使用して、URL を 16 バイトのバイナリデータに縮小し、このデータの 8 バイトを使用して、キャッシュにドキュメントを格納するために使用する 16 文字の 16 進数ファイル名を算出します。

キャッシュの詳細設定

キャッシュの詳細を設定することにより、キャッシュを有効にし、プロキシサーバーがキャッシュするプロトコルの種類を制御できます。キャッシュの詳細には次の項目が含まれます。


注 –

大きなキャッシュの詳細の設定には時間がかかるため、管理インタフェースがタイムアウトする可能性があります。そのため、大きなキャッシュを作成する場合は、コマンド行ユーティリティーを使用して、キャッシュの詳細を設定してください。キャッシュのコマンド行ユーティリティーの詳細については、「キャッシュのコマンド行インタフェースの使用」を参照してください。


Procedureキャッシュの詳細を設定するには

  1. サーバーマネージャーにアクセスし、「Caching」タブをクリックします。

  2. 「Set Cache Specifics」リンクをクリックします。

    「Set Cache Specifics」ページが表示されます。

  3. 適切なオプションを選択して、キャッシュを有効または無効にできます。

    キャッシュはデフォルトで有効になっています。

  4. 作業ディレクトリを指定します。

    デフォルトでは、作業ディレクトリはプロキシインスタンスの下にあります。この場所は変更できます。詳細については、「キャッシュの作業ディレクトリの作成」を参照してください。

  5. パーティション設定リンクをクリックします。

    「Add/Edit Cache Partitions」ページが表示されます。新しいキャッシュのパーティションを追加したり、既存のキャッシュのパーティションを編集したりできます。キャッシュサイズは、キャッシュを増やすことができる最大のサイズです。最大キャッシュサイズは 32G バイトです。詳細については、「キャッシュサイズの設定」を参照してください。

  6. キャッシュの容量設定リンクをクリックします。

    「Set Cache Capacity」ページが表示されます。「Set Cache Capacity」ページで、キャッシュの容量を設定できます。

  7. 「Cache HTTP」を選択して、HTTP ドキュメントのキャッシュを有効にします。

    プロキシサーバーで HTTP ドキュメントのキャッシュを行うことにした場合、キャッシュ内のドキュメントの最新状態チェックを常に行うか、あるいは定期的にチェックを行うかを決定する必要があります。また、プロキシサーバーがリモートサーバーにキャッシュのヒットを報告する機能を有効または無効にできます。詳細については、「HTTP ドキュメントのキャッシュ」を参照してください。利用できるオプションは次のとおりです。

    • 「Always Check That The Document Is Up To Date」オプションを選択し、HTTP ドキュメントを常に最新の状態に保ちます。

      • 「Check Only If Last Check More Than」ドロップダウンリストから時間数を選択し、プロキシサーバーの更新間隔を指定します。最新状態チェックは、次のオプションのいずれかを使用して実行します。

        • 「Use Last-modified Factor」: 配信元のサーバーからドキュメントとともに送信される、最後に変更されたヘッダー。

        • 「Use Only Explicit Expiration Information」: プロキシサーバーは Expires ヘッダーを使用して、キャッシュエントリが新しいか古いかを判断します。

        「Never Report Accesses To Remote Server」オプションを選択し、プロキシサーバーからリモートサーバーにアクセス回数を報告しないようにします。

      • 「Report Cache Hits To Remote Server」オプションを選択し、ドキュメントへのアクセス回数を追跡し、リモートサーバーに報告します。

  8. 「Yes; Reload If Older Than」チェックボックスを選択して、キャッシュされた FTP ドキュメントの更新間隔を設定し、ドロップダウンリストから値を選択して間隔を設定します。詳細については、「FTP ドキュメントと Gopher ドキュメントのキャッシュ」を参照してください。

  9. キャッシュされた Gopher ドキュメントに更新間隔を設定できます。「Yes; Reload If Older Than」チェックボックスを選択し、ドロップダウンリストから値を選択して間隔を設定します。詳細については、「FTP ドキュメントと Gopher ドキュメントのキャッシュ」を参照してください。

  10. [了解]をクリックします。

  11. 「Restart Required」をクリックします。「Apply Changes」ページが表示されます。

  12. 「Restart Proxy Server」ボタンをクリックして、変更を適用します。

キャッシュの作業ディレクトリの作成

キャッシュファイルは、キャッシュパーティションに置かれています。「Set Cache Specifics」ページで指定する作業ディレクトリは、多くの場合、キャッシュの親ディレクトリになります。キャッシュされたすべてのファイルは、キャッシュディレクトリに、体系付けられたディレクトリ構造として表現されます。キャッシュディレクトリ名を変更する場合、またはキャッシュディレクトリを別の場所に移動する場合、プロキシに新しい場所を指定する必要があります。

キャッシュのディレクトリ構造は複数のファイルシステムに拡張できるため、大容量のキャッシュ構造を 1 つの大容量ディスクで管理するのではなく、複数の容量の小さなディスクに分割することができます。各プロキシサーバーには専用のキャッシュディレクトリ構造が必要です。つまり、キャッシュディレクトリは、複数のプロキシサーバーで同時に共有することはできません。

キャッシュサイズの設定

キャッシュサイズは、パーティションサイズを表します。キャッシュサイズは、常にキャッシュ容量より小さくする必要があります。キャッシュ容量はキャッシュを増加させることができる最大サイズであるためです。すべてのパーティションサイズの合計は、必ずキャッシュサイズ以下にする必要があります。

プロキシのキャッシュに利用できるディスク容量は、キャッシュのパフォーマンスに大きく影響します。キャッシュが小さすぎる場合、Cache GC がキャッシュされたドキュメントを削除してディスクに空き容量を作る頻度が増加し、ドキュメントがコンテンツサーバーから取得される頻度が高くなります。これらの動作によってパフォーマンスが低下します。

より多くのドキュメントをキャッシュでき、ネットワークトラフィックの負荷を減少させ、プロキシの応答時間を速くできるため、キャッシュサイズを大容量にすると効率が向上します。また、キャッシュされたドキュメントは、ユーザー側で不要になれば GC によって削除されます。ファイルシステムの制限をなくすことにより、キャッシュサイズが大きくなり過ぎることはなくなります。余分な容量は未使用領域として残るだけです。

またキャッシュは複数のディスクパーティションに分割できます。

HTTP ドキュメントのキャッシュ

HTTP ドキュメントは、ほかのプロトコルのドキュメントにはないキャッシュ機能を備えています。ただし、キャッシュを正しくセットアップし、設定することで、プロキシサーバーでの HTTP、FTP、および Gopher の各ドキュメントを効果的にキャッシュできるようになります。


注 –

Proxy Server 4 は HTTPS ドキュメントのキャッシュをサポートしていません。


HTTP ドキュメントにはすべて詳細ヘッダーセクションがあり、プロキシサーバーはこのセクションを使用してプロキシキャッシュ内のドキュメントとリモートサーバー上のドキュメントを比較し、評価します。プロキシが HTTP ドキュメントに対して最新状態チェックを実行する場合、プロキシはサーバーに 1 つの要求を送信し、キャッシュ内のドキュメントが古ければサーバーにドキュメントを返すように指示します。ドキュメントは最後の要求から、変更されていないことが多く、したがって転送されません。このような HTTP ドキュメントの最新状態チェックにより、帯域幅が節約され、遅延が減少します。

リモートサーバーとのトランザクションを減らすために、プロキシサーバーで HTTP ドキュメント用にキャッシュ有効期限設定を設定できます。キャッシュ有効期限設定では、サーバーに要求を送信する前に HTTP ドキュメントの最新状態チェックが必要かどうかを評価するようにプロキシに情報を提供します。プロキシはこの評価を、ヘッダー内の HTTP ドキュメントが最後に変更された (Last-Modified) 日付に基づいて行います。

HTTP ドキュメントでは、キャッシュ更新設定も使用できます。このオプションは、プロキシが常に最新状態チェックを行うかどうか (有効期限の設定がオーバーライドされる)、プロキシが一定期間待機してからチェックを行うかどうかを指定します。次の表に、有効期限設定と更新設定の両方を指定した場合のプロキシの動作を示します。更新設定を使用すると、遅延が減り、帯域幅を大幅に節約できます。

表 12–1 HTTP でのキャッシュ有効期限設定とキャッシュ更新設定の使用

更新の設定 

有効期限の設定 

結果 

常に最新状態チェックを行う 

(適用なし) 

常に最新状態チェックを行う 

ユーザー指定の間隔 

ドキュメントの「expires」ヘッダーを使用 

更新期間が過ぎれば最新状態チェックを行う 

 

ドキュメントの Last-Modified ヘッダーで評価 

評価および expires ヘッダーに小さな値を設定* 


注 –

* 小さな値を使用すると、ドキュメントが頻繁に変更されるため、キャッシュのデータが古くなりません。


HTTP キャッシュの更新間隔の設定

プロキシサーバーで HTTP ドキュメントのキャッシュを行うことにした場合、プロキシサーバーでキャッシュ内のドキュメントの最新状態チェックを常に行うか、あるいはプロキシサーバーでキャッシュ更新設定 (最新状態チェックの間隔) に基づいてチェックを行うかを指定する必要があります。HTTP ドキュメントの場合、更新間隔は 4 〜 8 時間が適当です。更新間隔を長くすると、プロキシがリモートサーバーに接続する回数が少なくなります。プロキシが次の更新までの間に最新状態チェックを行わない場合でも、クライアントで「Reload」ボタンをクリックすると更新を実行できます。この操作により、プロキシはリモートサーバーで強制的に最新状態チェックを実行します。

HTTP ドキュメントの更新間隔は、「Set Cache Specifics」ページまたは「Set Caching Configuration」ページで設定できます。「Set Cache Specifics」ページでは、グローバルなキャッシュプロシージャーを設定できます。また「Set Caching Configuration」ページでは、特定の URL およびリソースのキャッシュプロシージャーを制御できます。

HTTP キャッシュの有効期限ポリシーの設定

また、Last-Modified 要素または明示的な有効期限情報のみを使用して、キャッシュされたドキュメントが最新かどうかを確認するようにサーバーを設定できます。

明示的な有効期限情報とは、一部の HTTP ドキュメント内にある、ファイルが期限切れになる日時を指定するヘッダーです。明示的な Expires ヘッダーを使用する HTTP ドキュメントは多くないため、Last-modified ヘッダーに基づいて評価してください。

HTTP ドキュメントを Last-modified ヘッダーに基づいてキャッシュすることを決定した場合、有効期限の評価で使用する割合を選択する必要があります。LM 要素として知られるこの割合に、最後の変更からドキュメントで最後に最新状態チェックが実行された時間までの間隔を乗算します。この結果の数字を、最後の最新状態チェックからの経過時間と比較します。この数字が間隔時間よりも小さい場合、ドキュメントの期限は切れていません。割合が小さくなると、プロキシのドキュメントチェックの頻度が高くなります。

たとえば、最後の変更が 10 日前に行われたドキュメントを考えてみます。Last-Modified 要素を 0.1 に設定した場合、プロキシはこの要素の意味を、ドキュメントが 1 日 (10 * 0.1 = 1) の間変更されない、と解釈します。その場合、ドキュメントのチェックが 1 日以内に実行されている場合、プロキシはキャッシュからドキュメントを返します。

同じ例で、HTTP ドキュメントのキャッシュ更新設定が 1 日未満に設定された場合、プロキシは 1 日に何度か最新状態チェックを実行します。プロキシは常に、ファイルがより頻繁に更新される値 (キャッシュの更新またはキャッシュの有効期限) を使用します。

HTTP ドキュメントの有効期限設定は、「Set Cache Specifics」ページまたは「Set Caching Configuration」ページで設定できます。「Set Cache Specifics」ページでは、グローバルなキャッシュプロシージャを設定できます。また「Set Caching Configuration」ページでは、特定の URL およびリソースのキャッシュプロシージャを制御できます。

HTTP アクセスのリモートサーバーへの報告

Sun Java System Web Proxy Server でドキュメントがキャッシュされると、そのドキュメントには再度更新されるまでに、何度もアクセスできます。リモートサーバーの場合、プロキシにコピーを 1 つ送信し、プロキシがそれをキャッシュする動作が 1 回のアクセス、すなわち「ヒット」になります。プロキシサーバーは、指定されたドキュメントが現在の最新状態チェックから次のチェックまでの間にプロキシキャッシュからアクセスされた回数をカウントし、次回ドキュメントが更新されるときに追加 HTTP 要求ヘッダー (Cache-Info) でそのヒットカウントをリモートサーバーに送信します。このように、リモートサーバーがこの種類のヘッダーを認識するように設定されていれば、リモートサーバーはドキュメントのアクセス回数をより正確に受信できます。

FTP ドキュメントと Gopher ドキュメントのキャッシュ

FTP と Gopher では、ドキュメントの最新状態をチェックするための方法が使用できません。したがって、FTP ドキュメントと Gopher ドキュメントのキャッシュを最適化する唯一の方法は、キャッシュ更新間隔の設定になります。キャッシュ更新間隔は、リモートサーバーから最新バージョンのドキュメントを取得するまでにプロキシサーバーが待機する時間です。キャッシュ更新間隔を設定しない場合、プロキシはキャッシュ内のバージョンが最新である場合でも、リモートサーバーからこれらのドキュメントを取得します。

FTP および Gopher にキャッシュ更新間隔を設定する場合、プロキシがドキュメントを安全に取得できると考えられる間隔を選択します。たとえば、変更がまれな情報を格納している場合、数日間の高い数値を使用します。データが常に変更されている場合、最低でも数時間間隔でファイルが取得されるようにします。更新中は、古いファイルをクライアントに送信してしまう危険性があります。この間隔が十分に短い場合 (数時間)、このような危険性をほぼ完全に除外でき、応答時間も著しく向上します。

FTP ドキュメントおよび Gopher ドキュメントのキャッシュの更新間隔は、「Set Cache Specifics」ページまたは「Set Caching Configuration」ページで設定できます。「Set Cache Specifics」ページでは、グローバルなキャッシュプロシージャーを設定できます。また「Set Caching Configuration」ページでは、特定の URL およびリソースのキャッシュプロシージャーを制御できます。「Set Cache Specifics」ページの使用の詳細については、「キャッシュの詳細設定」を参照してください。「Set Caching Configuration」ページの使用の詳細については、「キャッシュの設定」を参照してください。


注 –

FTP ドキュメントおよび Gopher ドキュメントでドキュメント間に大きな相違がある場合 (ドキュメントにより変更頻度が異なる場合)、「Set Caching Configuration」ページでドキュメントの種類ごとに個別にテンプレートを作成し (たとえば、リソース ftp://.*.gif でテンプレートを作成するなど)、次にそのリソースに適した更新間隔を設定します。


キャッシュの作成と変更

キャッシュパーティションは、キャッシュ用に確保される、予約されたディスクまたはメモリーの一部です。キャッシュ容量を変更する場合、パーティションを変更または追加することができます。

Procedureキャッシュパーティションを追加するには

  1. サーバーマネージャーにアクセスし、「Caching」タブをクリックします。

  2. 「Add/Edit Cache Partitions」リンクをクリックします。

    「Add/Edit Cache Partitions」ページが表示されます。

  3. 「Add Cache Partition」ボタンをクリックします。

    「Cache Partition Configuration」ページが表示されます。

  4. 新しいパーティションの適切な値を指定します。

  5. [了解]をクリックします。

  6. 「Restart Required」をクリックします。

    「Apply changes」ページが表示されます。

  7. 「Restart Proxy Server」ボタンをクリックして、変更を適用します。

Procedureキャッシュパーティションを変更するには

  1. サーバーマネージャーにアクセスし、「Caching」タブをクリックします。

  2. 「Add/Edit Cache Partitions」リンクをクリックします。

    「Add/Edit Cache Partitions」ページが表示されます。

  3. 変更するパーティションの名前をクリックします。

  4. 情報を編集します。

  5. [了解]をクリックします。

  6. 「Restart Required」をクリックします。

    「Apply Changes」ページが表示されます。

  7. 「Restart Proxy Server」ボタンをクリックして、変更を適用します。

キャッシュ容量の設定

キャッシュ容量の値は、キャッシュのディレクトリ構造を導き出すために使用します。このキャッシュ容量から、キャッシュディレクトリに含められるセクションの数が導き出されます。キャッシュ容量とキャッシュディレクトリのキャッシュ階層には直接的な関係があります。容量が大きくなると、階層も大規模になります。キャッシュ容量は、キャッシュのサイズ以上である必要があります。外部ディスクを追加するなど、あとでキャッシュサイズを増やす予定があるとわかっている場合は、キャッシュ容量をキャッシュサイズよりも大きく設定しておくと便利です。キャッシュ容量の最大値は 32G バイトで、この中に 256 のセクションを作成できます。

Procedureキャッシュ容量を設定するには

  1. サーバーマネージャーにアクセスし、「Caching」タブをクリックします。

  2. 「Set Cache Capacity」リンクをクリックします。

    「Set Cache Capacity」ページが表示されます。

  3. 「New Capacity Range」ドロップダウンリストから、容量を選択します。

  4. [了解]をクリックします。

  5. 「Restart Required」をクリックします。

    「Apply Changes」ページが表示されます。

  6. 「Restart Proxy Server」ボタンをクリックして、変更を適用します。

キャッシュセクションの管理

プロキシキャッシュは 1 つ以上のキャッシュセクションに分割されます。最大 256 のセクションを作成できます。キャッシュセクションの数は、必ず 2 の累乗 (1、2、4、8、16、...、256) にしてください。最大容量は 32G バイト (最適) で、256 のキャッシュセクションに分割できます。

キャッシュ容量に 500M バイトを選択した場合、インストーラは 4 つのキャッシュセクション (500 d6 125 = 4) を作成します。キャッシュ容量に 2G バイトを選択した場合、インストーラは 16 のセクション (2000 d6 125 = 16) を作成します。各セクションでセクション数を取得するための最適な値は 125 M バイトです。セクション数が多くなると、格納および分散される URL の数が多くなります。

Procedureキャッシュセクションを管理するには

  1. サーバーマネージャーにアクセスし、「Caching」タブをクリックします。

  2. 「Manage Sections」リンクをクリックします。

    「Manage Sections」ページが表示されます。

  3. テーブル内の情報を変更します。

    セクションは既存のパーティション間で移動することができます。

  4. [了解]をクリックします。

  5. 「Restart Required」をクリックします。

    「Apply Changes」ページが表示されます。

  6. 「Restart Proxy Server」ボタンをクリックして、変更を適用します。

ガベージコレクションの詳細設定

キャッシュガベージコレクタを使用して、キャッシュからファイルを削除できます。ガベージコレクションは、自動モードまたは明示モードのいずれかで実行できます。明示モードは、管理者が外部からスケジュールします。いずれかのモードを選択し、「了解」をクリックします。「Restart Required」をクリックします。「Apply Changes」ページが表示されます。「Restart Proxy Server」ボタンをクリックして、変更を適用します。

ガベージコレクションのスケジュール

「Schedule Garbage Collection」ページでは、ガベージコレクションが実行される日時を指定できます。

Procedureガベージコレクションを設定するには

  1. サーバーマネージャーにアクセスし、「Caching」タブをクリックします。

  2. 「Schedule Garbage Collection」リンクをクリックします。

    「Schedule Garbage Collection」ページが表示されます。

  3. 「Schedule Garbage Collection At」リストから、ガベージコレクションを実行する時間を選択します。

  4. ガベージコレクションを実行する曜日を指定します。

  5. [了解]をクリックします。

  6. 「Restart Required」をクリックします。

    「Apply Changes」ページが表示されます。

  7. 「Restart Proxy Server」ボタンをクリックして、変更を適用します。

キャッシュの設定

URL には指定する正規表現パターンに一致する複数の設定パラメータ値を指定できます。この機能により、キャッシュされたドキュメントの種類に基づいて、プロキシキャッシュを詳細に制御できます。キャッシュの設定では、次の項目を指定します。


注 –

特定のリソースのキャッシュデフォルトを「Derived configuration」か「Don’t cache」のいずれかに設定した場合、キャッシュ設定オプションは「Set Caching Configuration」ページに表示されません。ただし、リソースにキャッシュデフォルトの「Cache」を選択した場合は、複数のほかの設定項目を指定することができます。


Procedureキャッシュを設定するには

  1. サーバーマネージャーにアクセスし、「Caching」タブをクリックします。

  2. 「Set Caching Configuration」ページをクリックします。

    「Set Caching Configuration」ページが表示されます。

  3. ドロップダウンリストからリソースを選択するか、「Regular Expression」ボタンをクリックして正規表現を入力し、「了解」をクリックします。

  4. 設定情報を変更します。

  5. [了解]をクリックします。

  6. 「Restart Required」をクリックします。

    「Apply Changes」ページが表示されます。

  7. 「Restart Proxy Server」ボタンをクリックして、変更を適用します。

設定要素のキャッシュ

次の節では、ニーズに最も適した設定を決定する際に役に立つ情報が含まれています。

キャッシュデフォルトの設定

プロキシサーバーでは、特定のリソースに対するキャッシュデフォルトを指定できます。リソースは指定した特定の基準と一致する、ファイルの一種です。たとえば、サーバーがドメイン company.com からすべてのドキュメントを自動的にキャッシュするように設定するには、次の正規表現を作成します。

[a-z] *://[^/:]\\.company\\.com.*.

デフォルトでは、「Cache」オプションが選択されています。サーバーはキャッシュ可能なすべてのドキュメントを上記のドメインから自動的にキャッシュします。


注 –

特定のリソースのキャッシュデフォルトを、「Derived configuration」か「Don’t cache」のいずれかに設定した場合、そのリソースのキャッシュを設定する必要はありません。ただし、リソースにキャッシュデフォルトの「Cache」を選択した場合は、複数のほかの設定項目を指定することができます。これらの項目のリストについては、「キャッシュの設定」を参照してください。


HTTP、FTP、および Gopher のキャッシュデフォルトも設定できます。

認証が必要なページのキャッシュ

サーバーのキャッシュにユーザー認証が必要なファイルを保存できます。プロキシサーバーはキャッシュ内のファイルにタグを付け、ユーザーがファイルを要求した場合に、リモートサーバーからの認証が必要なファイルとして認識できるようにします。

プロキシサーバーはリモートサーバーの認証方式を判断できず、ユーザーの ID やパスワードのリストを持たないため、認証を必要とするドキュメントが要求されるたびにリモートサーバーで最新状態チェックを強制的に実行します。したがって、ユーザーはファイルにアクセスするために ID とパスワードを入力する必要があります。ユーザーがブラウザセッションで以前にそのサーバーにアクセスしている場合、ブラウザにより認証情報が自動的に送信され、ユーザーに入力が要求されません。

認証を必要とするページのキャッシュを有効に設定していない場合、プロキシはそれらをキャッシュしません。これはデフォルトの動作です。

クエリーのキャッシュ

クエリーのキャッシュは HTTP ドキュメントでのみ有効です。キャッシュされるクエリーの長さを制限できます。またはクエリーのキャッシュを完全に禁止することができます。クエリーが長くなると、繰り返される可能性が低くなるため、キャッシュの有用性も低くなります。

クエリーには次のキャッシュの制限が適用されます。

キャッシュファイルの最小および最大サイズの設定

プロキシサーバーにキャッシュされるファイルに最小および最大サイズを設定できます。高速ネットワーク接続を確立している場合、最小サイズを設定してください。高速接続を使用している場合、小さい容量のファイルはすぐに取得できるため、サーバーはファイルをキャッシュする必要がありません。この例では、大容量のファイルのみキャッシュが必要になります。最大ファイルサイズを設定することで、大容量のファイルによりプロキシのディスク容量が占有されるのを防ぐことができます。

最新状態チェックポリシーの設定

最新状態のチェックポリシーにより、HTTP ドキュメントを常に最新状態に保つことができます。また、プロキシサーバーに更新間隔を指定することもできます。

有効期限ポリシーの設定

Last-modified 要素または明示的な有効期限情報を使用して、有効期限ポリシーを設定できます。

クライアント割り込みの場合のキャッシュ動作の設定

ドキュメントの一部のみが取得され、クライアントがデータ転送に割り込む場合、プロキシにはドキュメントをキャッシュするために、ドキュメントの取得を終了させることができます。プロキシのデフォルトでは、ドキュメントの 25 パーセント以上が取得された場合、キャッシュのためドキュメントの取得を終了します。それ以外の場合、プロキシはリモートサーバー接続を終了し、不完全なファイルを削除します。クライアント割り込みの割合は、高くしたり低くしたりすることができます。

サーバー接続に失敗した場合の動作

配信元サーバーに到達できないため、古いドキュメントの最新状態チェックに失敗する場合、プロキシがキャッシュの古いドキュメントを送信するかどうかを指定できます。

ローカルホストのキャッシュ

ローカルホストから要求された URL にドメイン名が含まれていない場合、プロキシサーバーはその URL をキャッシュしません。この動作によりキャッシュの重複を避けることができます。たとえば、ユーザーがローカルサーバーから http://machine/filename.htmlhttp://machine.example.com/filename.html を要求する場合、どちらの URL もキャッシュに格納されている可能性があります。これらのファイルはローカルサーバーのファイルであるため、すばやく取得でき、キャッシュする必要がありません。

ただし、会社で複数のリモートの場所にサーバーを配置している場合、すべてのホストのドキュメントをキャッシュして、ネットワークトラフィックを減らし、ファイルへのアクセス時間を短縮することができます。

Procedureローカルホストのキャッシュを有効にするには

  1. サーバーマネージャーにアクセスし、「Caching」タブをクリックします。

  2. 「Cache Local Hosts」リンクをクリックします。

    「Cache Local Hosts」ページが表示されます。

  3. ドロップダウンリストからリソースを選択するか、「Regular Expression」ボタンをクリックして正規表現を入力し、「了解」をクリックします。

    正規表現の詳細については、第 16 章テンプレートとリソースの管理を参照してください。

  4. 「Enabled」ボタンをクリックします。

  5. [了解]をクリックします。

  6. 「Restart Required」をクリックします。

    「Apply Changes」ページが表示されます。

  7. 「Restart Proxy Server」ボタンをクリックして、変更を適用します。

ファイルキャッシュの設定

ファイルキャッシュはデフォルトで有効になっています。ファイルキャッシュの設定は、server.xml ファイルに保存されています。ファイルキャッシュの設定は、サーバーマネージャーを使用して変更することができます。


注 –

「Configure File Cache」ページはユーザーインタフェースに表示されますが、今回の Proxy Server 4 のリリースでは実装されていません。


Procedureファイルキャッシュを設定するには

  1. サーバーマネージャーから「Caching」タブをクリックします。

  2. 「File Cache Configuration」リンクをクリックします。

    「File Cache Configuration」ページが表示されます。

  3. まだ選択されていない場合には、「Enable File Cache」を選択します。

  4. ファイルを転送するかどうかを選択します。

    転送ファイルを有効にすると、サーバーはファイルキャッシュにファイルのコンテンツではなく、オープンしているファイルの記述子をキャッシュします。クライアントへのファイルコンテンツの送信には PR_TransmitFile が使用されます。「Transmit File」を有効にした場合、オープンしているファイルの記述子のみがキャッシュされるため、通常はファイルキャッシュによって行われる、小、中、大の異なるサイズのファイルの区別が行われなくなります。デフォルトでは、Windows では「Transmit File」は有効に、UNIX では無効に設定されています。UNIX では、ネイティブ OS で PR_TransmitFile がサポートされているプラットフォームのみで「Transmit File」を有効にするようにしてください。現在 HP-UX と AIX が該当します。UNIX/Linux プラットフォームでは使用しないことをお勧めします。

  5. ハッシュテーブルのサイズを入力します。

    デフォルトサイズはファイルの最大数の 2 倍に 1 を加えた数です。たとえば、ファイルの最大数が 1024 に設定されている場合、デフォルトのハッシュテーブルのサイズは 2049 になります。

  6. 有効なキャッシュエントリの最大時間を秒数で入力します。

    デフォルトの設定は 30 です。この設定により、ファイルがキャッシュされてから、キャッシュされた情報を継続して使用できる時間が制御されます。「MaxAge」よりも古いエントリは、同じファイルがキャッシュから参照された場合、同じファイルの新しいエントリに置き換えられます。コンテンツを定期的に更新するかどうかに基づいて、最大時間を設定します。たとえば、コンテンツが定期的に 1 日に 4 回更新される場合、最大時間を 21600 秒 (6 時間) に設定できます。それ以外の場合、最大時間には、ファイルが変更されたあと、以前のバージョンのコンテンツファイルを提供する最大時間を設定することを検討してください。

  7. キャッシュするファイルの最大数を入力します。

    デフォルトの設定は 1024 です。

  8. ファイルサイズ (中) およびファイルサイズ (小) の上限をバイトで入力します。

    デフォルトでは、「Medium File Size Limit」は 537600 に設定され、「Small File Size Limit」は 2048 に設定されています。

    キャッシュは小ファイル、中ファイル、大ファイルを異なる方法で処理します。UNIX/Linux プラットフォームのみ、中ファイルのコンテンツは、ファイルが仮想メモリー にマッピングされることにより、キャッシュされます。小ファイルのコンテンツは、ヒープスペースが割り当てられ、ファイルをそのスペース内に読み込むことにより、キャッシュされます。大ファイルのコンテンツはキャッシュされませんが、大ファイルの情報はキャッシュされます。小ファイルと中ファイルを区別する利点は、小ファイルが多数ある場合に、仮想メモリーで多くのページが消費されるのを防ぐことにあります。このため、「Small File Size Limit」の値は、通常は VM ページサイズよりもやや低い値になります。

  9. 中ファイルおよび小ファイルの容量を設定します。

    中ファイルの容量は、中サイズの全ファイルのマップに使用される仮想メモリーのサイズをバイトで表したものです。サイズはデフォルトで 10485760 に設定されています。小ファイルの容量は、小ファイルのキャッシュに使用されるヒープスペースを含めた、キャッシュに使用されるヒープスペースをバイトで表したものです。UNIX/Linux の場合、サイズはデフォルトで 1048576 に設定されています。

  10. [了解]をクリックします。

  11. 「Restart Required」をクリックします。

    「Apply Changes」ページが表示されます。

  12. 「Restart Proxy Server」ボタンをクリックして、変更を適用します。

URL データベースの表示

アクセスプロトコルとサイト名によってグループ分けされ、記録されたすべての キャッシュされた URL の名前と属性を表示できます。この情報にアクセスすることで、ドキュメントの期限切れやキャッシュからの削除などのさまざまなキャッシュ管理機能を実行できます。

Procedureデータベースの URL を表示するには

  1. サーバーマネージャーにアクセスし、「Caching」タブをクリックします。

  2. 「View URL Database」リンクをクリックします。

    「View URL Database」ページが表示されます。

  3. 「Regenerate」ボタンをクリックし、キャッシュされた URL の最新のリストを生成します。

  4. (オプション) 特定の URL の情報を表示する場合は、「Search」フィールドに URL または正規表現を入力し、「Search」ボタンをクリックします。

  5. ドメイン名とホストで分類されたキャッシュデータベース情報を表示する場合は、

    1. リストからドメイン名を選択します。

      そのドメイン内にあるホストのリストが表示されます。ホスト名をクリックすると、URL のリストが表示されます。

    2. URL の名前をクリックします。

      その URL に関する詳細な情報が表示されます。

    3. URL の名前をクリックして、その URL に関する詳細情報が表示されます。

Procedureキャッシュされた URL を期限切れにするか削除するには

  1. サーバーマネージャーにアクセスし、「Caching」タブをクリックします。

  2. 「View URL Database」リンクをクリックします。

    「View URL Database」ページが表示されます。

  3. 「Regenerate」ボタンをクリックして、キャッシュデータベースのスナップショットを生成します。

    このスナップショットが、以降の手順の基準になります。

  4. 期限切れにするまたは削除する特定の URL についての情報を得たい場合は、「Search」フィールドにその URL またはその URL に対応するまたは正規表現を入力し、「Search」ボタンをクリックします。

  5. ドメイン名とホストで分類された URL を操作する場合、

    1. リストからドメイン名を選択します。

      そのドメイン内にあるホストのリストが表示されます。

    2. ホスト名をクリックすると、URL のリストが表示されます。

  6. 個々のファイルを期限切れにするには、

    1. それらのファイルの URL の横の「Ex」オプションを選択します。

    2. 「Exp/Rem Marked」ボタンをクリックします。

  7. リスト内のすべてのファイルを期限切れにするには、フォームの下部の「Exp All」ボタンをクリックします。

  8. キャッシュから個々のファイルを削除するには、

    1. 削除するファイルの URL の横の「Rm」オプションを選択します。

    2. 「Exp/Rem Marked」ボタンをクリックします。

  9. リスト内のすべてのファイルを削除するには、「Rem All」ボタンをクリックします。

  10. 「Regenerate」ボタンをクリックし、スナップショットを再生成します。


    注 –

    「Ex」オプションまたは「Remove」オプションを使用する場合、関連ファイルは処理されますが、スナップショットに変更が反映されません。変更を反映させるには、スナップショットを再生成する必要があります。


キャッシュのバッチ更新の使用

指定された Web サイトにファイルをプリロードしたり、プロキシサーバーがビジー状態の場合を除いて、キャッシュ内のドキュメントの最新状態チェックを実行したりすることができます。URL のバッチを作成、編集、削除し、バッチの更新を有効、無効にできます。

バッチ更新の作成

バッチ内の更新するファイルを指定して、ファイルをアクティブにキャッシュできます。現在キャッシュにある複数のファイルに対して、最新状態チェックを実行したり、特定の Web サイト内の複数のファイルをプリロードしたりできます。

Procedureバッチ更新を作成するには

  1. サーバーマネージャーにアクセスし、「Caching」タブをクリックします。

  2. 「Set Cache Batch Updates」リンクをクリックします。

    「Set Cache Batch Updates」ページが表示されます。

  3. 「Create/Select a Batch Update Configuration」の横のドロップダウンリストから、「New and Create」を選択します。

  4. [了解]をクリックします。「Set Cache Batch Updates」ページが表示されます。

  5. 「Name」セクションに、新しいバッチ更新のエントリの名前を入力します。

  6. このページの「Source」セクションで、作成するバッチ更新の種類を選択します。

    キャッシュ内のすべてのドキュメントに対して最新状態チェックを実行する場合は、最初のラジオボタンをクリックします。指定されたソース URL から再帰的に URL をキャッシュする場合は、2 つ目のラジオボタンをクリックします。

  7. 「Source」セクションフィールドで、バッチ更新で使用するドキュメントを指定します。

  8. 「Exceptions」セクションで、バッチ更新から除外するファイルをすべて指定します。

  9. 「Resources」セクションに、同時接続の最大数と走査するドキュメントの最大数を入力します。

  10. [了解]をクリックします。

    「Create/Select a Batch Update Configuration」の横のドロップダウンリストから、新しく追加したバッチ名と「Schedule」 を選択します。

  11. [了解]をクリックします。


    注 –

    バッチ更新設定は、この機能を有効にせずに作成、編集、および削除できます。ただし、「Set Cache Batch Updates」ページで設定した時間に従ってバッチ更新を実行する場合は、更新を有効にする必要があります。


  12. 「Schedule Batch Updates」ページが表示されます。

  13. 「Update On」または「Update Off」オプションを選択します。

  14. ドロップダウンリストから時間を選択し、更新を実行する日付を選択します。

  15. [了解]をクリックします。

  16. 「Restart Required」をクリックします。

    「Apply Changes」ページが表示されます。

  17. 「Restart Proxy Server」ボタンをクリックして、変更を適用します。

バッチ更新設定の編集または削除

特定のファイルを除外する必要がある場合、またはバッチの更新回数を増やす場合、バッチ更新を編集することができます。また、バッチ更新設定を完全に削除することもできます。

Procedureバッチ更新設定を編集または削除するには

  1. サーバーマネージャーにアクセスし、「Caching」タブをクリックします。

  2. 「Set Cache Batch Updates」リンクをクリックします。

    「Set Cache Batch Updates」ページが表示されます。

  3. バッチを編集するには、そのバッチの名前を選択し、「Create/Select a Batch Update Configuration」の横のドロップダウンリストから「Edit」を選択します。

  4. [了解]をクリックします。

    「Set Cache Batch Updates」ページが表示されます。

  5. 必要に応じて、情報を変更します。

  6. [了解]をクリックします。

  7. 「Restart Required」をクリックします。

    「Apply Changes」ページが表示されます。

  8. 「Restart Proxy Server」ボタンをクリックして、変更を適用します。

Procedureバッチ更新設定を削除するには

  1. サーバーマネージャーにアクセスし、「Caching」タブをクリックします。

  2. 「Set Cache Batch Updates」リンクをクリックします。

  3. バッチを削除するには、そのバッチの名前を選択し、「Create/Select a Batch Update Configuration」の横のドロップダウンリストから「Delete」を選択します。

  4. [了解]をクリックします。

  5. 「Restart Required」をクリックします。

    「Apply Changes」ページが表示されます。

  6. 「Restart Proxy Server」ボタンをクリックして、変更を適用します。

キャッシュのコマンド行インタフェースの使用

プロキシサーバーには、いくつかのコマンド行ユーティリティーが付属しており、これを使用してキャッシュのディレクトリ構造を設定、変更、生成、および修正することができます。これらのユーティリティーの大半は、サーバーマネージャーの各ページの機能と重複しています。たとえば、cron ジョブとして保守をスケジュールする必要がある場合に、ユーティリティーを使用することもできます。すべてのユーティリティーは extras ディレクトリにあります。

Procedureコマンド行ユーティリティーを実行するには

  1. コマンド行プロンプトから server_root /proxy-serverid ディレクトリに移動します。

  2. ./start -shell と入力します。

    次の節では各種のユーティリティーについて説明します。

キャッシュディレクトリ構造の構築

cbuild と呼ばれるプロキシユーティリティーは、オフラインでキャッシュデータベースを管理します。このユーティリティーを使用すると、コマンド行インタフェースを使用して新しいキャッシュ構造を作成したり、既存のキャッシュ構造を変更することができます。サーバーマネージャーのページを使用して、プロキシで新しく作成されたキャッシュを使用できるようにすることができます。


注 –

このユーティリティーは server.xml ファイルを更新しません。 cbuild は複数のパーティションを持つキャッシュのサイズを変更できません。cbuild でキャッシュを作成または変更する場合、server.xml ファイルの cachecapacity パラメータを手動で更新してください。

<PARTITION partitionname="part1" partitiondir="/home/build/install9
/proxy-server1/cache" maxsize="1600" minspace="5" enabled="true"/>
<CACHE enabled="true" cachecapacity="2000" cachedir="/tmp/cache">

cbuild ユーティリティーは 2 つのモードで起動できます。1 つ目のモードは次のとおりです。

cbuild -d conf-dir -c cache-dir -s cache size 
cbuild -d conf-dir -c cache-dir -s cache size -r

次に例を示します。

cbuild -d server_root/proxy-serverid/config 
	-c server_root/proxy-serverid/cache -s 512
cbuild -d server_root/proxy-serverid/config 
	-c server_root/proxy-serverid/cache -s 512 -r

ここで

2 つ目のモードは次のとおりです。

cbuild -d conf-dir -c cache-dir -n cache-dim
cbuild -d conf-dir -c cache-dir -n cache-dim -r

次に例を示します。

cbuild -d server_root/proxy-serverid/config 
	-c server_root/proxy-serverid/cache -n 3
cbuild -d server_root/proxy-serverid/config 
	-c server_root/proxy-serverid/cache -n 3 -r

ここで

キャッシュ URL リストの管理

プロキシユーティリティー urldb はキャッシュ内の URL リストを管理します。このユーティリティーを使用して、キャッシュされる URL を一覧表示することができます。また、キャッシュされたオブジェクトを選択して有効期限切れにしたり、キャッシュデータベースから削除することができます。

urldb コマンドは -o オプションに基づいて 3 つのグループに分類できます。

キャッシュガベージコレクションの管理

cachegc ユーティリティーを使用すると、キャッシュデータベースにある有効期限切れのオブジェクト、または古くなりすぎてキャッシュサイズの制約によりディレクトリにキャッシュできなくなったオブジェクトを消去できます。


注 –

cachegc ユーティリティーを使用する場合は、プロキシインスタンスで CacheGC が実行されていないことを確認してください。


cachegc ユーティリティーは、次のように使用します。

cachegc -f leave-fs-full-percent -u gc-high-margin-percent -l gc-low-margin-percent -e 
	extra-margin-percent -d conf-dir

次に例を示します。

cachegc -f 50 -u 80 -l 60 -e 5 -d server-root/proxy-serverid/config

ここで

バッチ更新の管理

bu ユーティリティーはキャッシュを更新し、2 つのモードで動作します。1 つ目のモードでは、キャッシュデータベース内を反復し、それぞれに HTTP 要求を送信することで、キャッシュ内に存在するすべての URL を更新します。2 つ目のモードでは、指定された URL から開始し、その URL から指定する深さまでのすべてのリンクに対して幅優先の反復を行い、キャッシュにページをフェッチします。bu は RFC 準拠のロボットです。

bu -n hostname -p port -t time-lmt -f contact-address -s sleep-time -o object -r n -d conf-dir

次に例を示します。

bu -n phoenix -p 80 -t 3600 -f admin@phoenix.com -s 60 -o nova -r n 
	-d server-root/proxy-serverid/config

ここで

Internet Cache Protocol (ICP) の使用

Internet Cache Protocol (ICP) はオブジェクトロケーションプロトコルで、キャッシュ間の対話を可能にします。キャッシュでは ICP を使用して、キャッシュされた URL の存在と、それらの URL を取得するための最適な場所について、クエリーの送信と応答を行います。通常の ICP 交換では、1 つのキャッシュから特定の URL に関する 1 つの ICP クエリーが隣接するすべてのキャッシュに送信されます。次に、隣接するキャッシュに、その URL が含まれているかどうかを示す ICP 応答を返します。キャッシュに URL が含まれていない場合、miss を返します。URL が含まれている場合、hit を返します。

隣接 ICP を経由したルーティング

ICP は異なる管理ドメインに存在するプロキシ間の通信に使用できます。ICP により、ある管理ドメインのプロキシキャッシュは、別の管理ドメイン内のプロキシキャッシュと通信できます。ICP は複数のプロキシサーバー間で通信する必要があるが、プロキシ配列内にあるため、1 つのマスタープロキシからすべてのプロキシサーバーを設定できないような場合に適しています。図 12–3 に、異なる管理ドメインにあるプロキシ間の ICP の交換を示します。

ICP を介して通信するプロキシはネイバーと呼ばれます。隣接 ICP 内に 64 を超えるネイバーを配置できません。隣接 ICP の 2 つの種類のネイバーは parentsibling です。要求される URL がほかのネイバーに存在しない場合、parent のみがリモートサーバーにアクセスできます。隣接 ICP には parent が存在しなくても、また複数の parent が存在していてもかまいません。隣接 ICP の parent 以外のすべてのネイバーは sibling と見なされます。Sibling は ICP のデフォルト経路としてマークされている場合を除き、リモートサーバーからドキュメントを取得できず、ICP はデフォルトを使用します。

ネイバーがクエリーを受け取る順序を決定する場合は、ポーリングラウンドを使用できます。ポーリングラウンドは ICP クエリーのサイクルです。各ネイバーに対して、ポーリングラウンドを割り当てる必要があります。すべてのネイバーをポーリングラウンド 1 に設定する場合、すべてのネイバーは同時に 1 サイクルで照会されます。一部のネイバーをポーリングラウンド 2 に設定した場合、ポーリングラウンド 1 のすべてのネイバーが最初に照会され、どのネイバーも HIT を返さない場合、ラウンド 2 のすべてのプロキシが照会されます。ポーリングラウンドの最大回数は 2 です。

ICP の parent はネットワークのボトルネックになりやすいため、ポーリングラウンドを使用して負荷を軽減できます。一般的な設定では、すべての sibling をポーリングラウンド 1 に設定し、すべての parent をポーリングラウンド 2 に設定します。このようにすることで、ローカルプロキシが URL を要求した場合、要求はまず隣接内のすべての sibling に照会されます。どの sibling にも要求された URL が存在しない場合、要求は parent に照会されます。parent にも URL が存在しない場合、ローカルプロキシはリモートサーバーから URL を取得します。

隣接 ICP の各ネイバーは、少なくとも 1 台の ICP サーバーを稼働させている必要があります。ネイバーが ICP サーバーを稼働させていない場合、ネイバーからの ICP 要求に答えることができません。プロキシサーバーで ICP を有効にすると、まだ稼働していない場合は、ICP サーバーが起動されます。

図 12–3 ICP 交換

異なる管理ドメイン内のプロキシ間の ICP 交換を示す図

ICP の設定

ここでは、ICP の設定に関する詳細を説明します。ICP の設定に必要な一般的な手順は次のとおりです。

  1. (オプション) 隣接 ICP に parent を追加します。

    詳細については、「隣接 ICP に parent または sibling プロキシを追加するには」を参照してください。

  2. 隣接 ICP に sibling を追加します。

    詳細については、「隣接 ICP に parent または sibling プロキシを追加するには」を参照してください。

  3. 隣接 ICP の各ネイバーを設定します。

    詳細については、「隣接 ICP の設定を編集するには」を参照してください。

  4. ICP を有効にします。

    詳細については、「ICP を有効にするには」を参照してください。

  5. プロキシの隣接 ICP に sibling または parent がある場合、隣接 ICP を経由したルーティングを有効にします。

    詳細については、「隣接 ICP を経由したルーティングを有効にするには」を参照してください。

Procedure隣接 ICP に parent または sibling プロキシを追加するには

  1. サーバーマネージャーにアクセスし、「Caching」タブをクリックします。

  2. 「Configure ICP」リンクをクリックします。

    「Configure ICP」ページが表示されます。

  3. このページの「Parent List」セクションで、「Add」ボタンをクリックします。

    「ICP Parent」ページが表示されます。

    • parent プロキシを追加するには、ページの「Add in the Parent List」セクションをクリックします。

      「ICP Parent」ページが表示されます。

    • sibling プロキシを追加するには、ページの「Add in the Sibling List」セクションをクリックしてください。

      「ICP Sibling」ページが表示されます。

  4. 「Machine Address」フィールドに、隣接 ICP に追加する parent プロキシの IP アドレスまたはホスト名を入力します。

  5. 「ICP Port」フィールドに、parent プロキシが ICP メッセージを待機するポート番号を入力します。

  6. (オプション)「Multicast Address」フィールドに、parent が待機するマルチキャストアドレスを入力します。マルチキャストアドレスは、複数のサーバーが待機できる IP アドレスです。

    マルチキャストアドレスを使用することによって、そのマルチキャストアドレスを待機しているすべてのネイバーで表示できるネットワークに対して、プロキシから 1 つのクエリーを送信することができます。この手法によって、各ネイバーに個別にクエリーを送信する必要がなくなります。マルチキャストの使用はオプションです。


    注 –

    別のポーリングラウンドのネイバーは、同じマルチキャストアドレスを待機できません。


  7. 「TTL」フィールドに、マルチキャストメッセージが転送されるサブネットの数を入力します。

    TTL を 1 に設定すると、マルチキャストメッセージはローカルサブネットにのみ転送されます。TTL を 2 に設定すると、メッセージは、1 レベル先のすべてのサブネットに送信され、3 の場合は 2 レベル先のように拡大されます。


    注 –

    マルチキャストを使用した場合、2 つの関連性のないネイバーで相互に ICP メッセージを送信することができます。したがって、隣接 ICP のプロキシからの ICP メッセージを関連性のないネイバーに受け取られるのを防ぐには、「TTL」フィールドの TTL の値を低く設定します。


  8. 「Proxy Port」フィールドに、parent のプロキシサーバー用のポートを入力します。

  9. 「Polling Round」ドロップダウンリストから、parent に割り当てるポーリングラウンドを選択します。デフォルトのポーリングラウンドは 1 です。

  10. [了解]をクリックします。

  11. 「Restart Required」をクリックします。

    「Apply Changes」ページが表示されます。

  12. 「Restart Proxy Server」ボタンをクリックして、変更を適用します。

Procedure隣接 ICP の設定を編集するには

  1. サーバーマネージャーにアクセスし、「Caching」タブをクリックします。

  2. 「Configure ICP」リンクを選択します。「Configure ICP」ページが表示されます。

  3. 編集するプロキシの横のラジオボタンを選択します。

  4. 「編集」ボタンをクリックします。

  5. 該当する情報を変更します。

  6. [了解]をクリックします。

  7. 「Restart Required」をクリックします。

    「Apply Changes」ページが表示されます。

  8. 「Restart Proxy Server」ボタンをクリックして、変更を適用します。

Procedure隣接 ICP からプロキシを削除するには

  1. サーバーマネージャーにアクセスし、「Caching」タブをクリックします。

  2. 「Configure ICP」リンクを選択します。「Configure ICP」ページが表示されます。

  3. 削除するプロキシの横のラジオボタンを選択します。

  4. [削除]をクリックします。

  5. 「Restart Required」をクリックします。

    「Apply Changes」ページが表示されます。

  6. 「Restart Proxy Server」ボタンをクリックして、変更を適用します。

Procedure隣接 ICP のローカルプロキシサーバーを設定するには

隣接 ICP では各ネイバー、すなわちローカルプロキシを設定する必要があります。

  1. サーバーマネージャーにアクセスし、「Caching」タブをクリックします。

  2. 「Configure ICP」リンクを選択します。

    「Configure ICP」ページが表示されます。

  3. 「Binding Address」フィールドに、隣接サーバーがバインドする IP アドレスを入力します。

  4. 「ポート」フィールドに、隣接サーバーが ICP を待機するポート番号を入力します。

  5. 「Multicast Address」フィールドに、ネイバーが待機するマルチキャストアドレスを入力します。

    マルチキャストアドレスは、複数のサーバーが待機できる IP アドレスです。マルチキャストアドレスを使用することによって、そのマルチキャストアドレスを待機しているすべてのネイバーで表示できるネットワークに対して、プロキシから 1 つのクエリーを送信することができます。この手法によって、各ネイバーに個別にクエリーを送信する必要がなくなります。

    ネイバーにマルチキャストアドレスとバインドアドレスの両方が指定されている場合、ネイバーは、応答の送信にはバインドアドレスを使用し、待機にはマルチキャストを使用します。バインドアドレスもマルチキャストアドレスも指定されない場合、オペレーティングシステムによりデータの送信に使用するアドレスが決定されます。

  6. 「Default Route」フィールドに、隣接するプロキシが HIT を応答しない場合にネイバーが応答をルーティングするプロキシの名前または IP アドレスを入力します。

    このフィールドに「origin」と入力した場合、または空白のままにした場合、デフォルト経路で配信元サーバーにルーティングされます。

    「No Hit Behavior」ドロップダウンリストから「最初に応答する parent」を選択した場合、「Default Route」フィールドに入力した経路は無効になります。プロキシがこの経路を使用するのは、デフォルトの「ヒット動作なし」を選択した場合のみです。

  7. 2 つ目の「ポート」フィールドに、「Default Route」フィールドに入力したデフォルト経路のマシンのポート番号を入力します。

  8. 「On No Hits, Route Through」ドロップダウンリストから、隣接 ICP のどの sibling もキャッシュ内に要求された URL がない場合のネイバーの動作を選択します。

    利用できるオプションは次のとおりです。

    • 最初に応答する parent: ネイバーは最初に「miss」で応答する parent から、要求された URL を取得します。

    • デフォルトの経路: ネイバーは、「Default Route」フィールドに指定されたマシンから、要求された URL を取得します。

  9. 「Server Count」フィールドに、ICP 要求を処理するプロセス数を入力します。

  10. 「Timeout」フィールドに、各ラウンドでネイバーが ICP 応答を待機する最大時間を入力します。

  11. [了解]をクリックします。

  12. 「Restart Required」をクリックします。

    「Apply Changes」ページが表示されます。

  13. 「Restart Proxy Server」ボタンをクリックして、変更を適用します。

ProcedureICP を有効にするには

  1. サーバーマネージャーにアクセスし、「Preferences」タブをクリックします。

  2. 「Configure System Preferences」リンクをクリックします。

    「Configure System Preferences」ページが表示されます。

  3. ICP の「Yes」ラジオボタンを選択して、「了解」をクリックします。

  4. 「Restart Required」をクリックします。

    「Apply Changes」ページが表示されます。

  5. 「Restart Proxy Server」ボタンをクリックして、変更を適用します。

Procedure隣接 ICP を経由したルーティングを有効にするには

隣接 ICP を経由したルーティングを有効にする必要があるのは、プロキシが隣接 ICP にほかの sibling または parent を持っている場合のみです。プロキシが別のプロキシの parent であり、独自の sibling または parent を持っていない場合、そのプロキシに対してのみ ICP を有効にする必要があります。隣接 ICP を経由したルーティングを有効にする必要はありません。

  1. サーバーマネージャーにアクセスし、「Routing」タブをクリックします。

  2. 「Set Routing Preferences」リンクをクリックします。

    「Set Routing Preferences」ページが表示されます。

  3. ドロップダウンリストからリソースを選択するか、「Regular Expression」ボタンをクリックして正規表現を入力し、「了解」をクリックします。

  4. 「Route Through」オプションの横のラジオボタンを選択します。

  5. ICP の横のチェックボックスを選択します。

  6. (オプション) クライアントが別のネイバーを経由してドキュメントを取得するのではなく、そのドキュメントを持つ隣接 ICP から直接ドキュメントを取得するように設定するには、「Text Redirect」の横のチェックボックスを選択します。

  7. [了解]をクリックします。


    注意 – 注意 –

    現在リダイレクトはどのクライアントでもサポートされていないため、今回はこの機能を使用しないでください。


  8. 「Restart Required」をクリックします。

    「Apply Changes」ページが表示されます。

  9. 「Restart Proxy Server」ボタンをクリックして、変更を適用します。

プロキシ配列の使用

分散キャッシュのためにプロキシ配列を使用すると、複数のプロキシが 1 つのキャッシュとして機能します。配列内の各プロキシに、ブラウザまたはダウンストリームのプロキシサーバーにより取得可能な、さまざまなキャッシュ URL が格納されます。プロキシ配列を使用すると、複数のプロキシサーバーを使用するとしばしば発生する、キャッシュの重複を避けることができます。ハッシュベースのルーティングを通じて、プロキシ配列はプロキシ配列内の正しいキャッシュに要求をルーティングします。

またプロキシ配列では、増分スケーラビリティが可能です。プロキシ配列へのプロキシの追加を決定した場合、各メンバーのキャッシュは無効になりません。各メンバーのキャッシュ内の 1/n の URL のみが、ほかのメンバーに再割り当てされます (n は配列のプロキシの数)。

プロキシ配列を経由したルーティング

プロキシ配列からの各要求について、ハッシュ機能は配列内の各プロキシに、要求された URL、プロキシ名、およびプロキシの負荷要因に基づくスコアを割り当てます。要求はスコアが最も高いプロキシにルーティングされます。

URL の要求はクライアントとプロキシの両方から送られる可能性があるため、プロキシ配列を経由するルーティングには次の 2 種類あります。クライアントからプロキシへのルーティングとプロキシからプロキシへのルーティング。

クライアントからプロキシへのルーティングでは、クライアントはプロキシ自動設定 (Proxy Auto Configuration、PAC) メカニズムを使用して、経由するプロキシを決定します。ただし、クライアントは、標準の PAC ファイルを使用する代わりに、ハッシュアルゴリズムを計算する特別な PAC ファイルを使用し、要求された URL に適切な経路を決定します。図 12–4 にクライアントからプロキシへのルーティングを示します。この図では、プロキシ配列の各メンバーがロードされ、マスタープロキシに対してPAT ファイルに加えられた更新をポーリングします。PAC ファイルを取得したクライアントに必要となるのは、設定が変更されるたびにこのファイルをダウンロードすることだけです。通常、クライアントは再起動時に PAC ファイルをダウンロードします。

プロキシサーバーは、管理インタフェースから作成された Proxy Array Membership Table (PAT) 仕様に基づいて特別な PAC ファイルを自動的に生成できます。

図 12–4 クライアントからプロキシへのルーティング

クライアントからプロキシへのルーティングを示す図

プロキシからプロキシへのルーティングでは、プロキシは、クライアントが使用する PAC ファイルの代わりに PAT (Proxy Array Table) ファイルを使用して、ハッシュアルゴリズムを計算します。PAT ファイルは、プロキスのマシン名、IP アドレス、ポート、負荷係数、キャッシュサイズなどを含むプロキシ配列に関する情報を格納した ASCII ファイルです。サーバー側でハッシュアルゴリズムを計算する場合、PAC ファイル (実行時に解釈が必要な JavaScript ファイル) よりも PAT ファイルを使用する方がはるかに効率的です。ただし、ほとんどのクライアントは PAT ファイル形式を認識しないため、PAC ファイルを使用する必要があります。図 12–5 にプロキシからプロキシへのルーティングを示します。

PAT ファイルはプロキシ配列のマスタープロキシで作成されます。プロキシの管理者は、マスタープロキシにするプロキシを決定する必要があります。管理者は、このマスタープロキシサーバーから PAT ファイルを変更できます。プロキシ配列のほかのすべてのメンバーは、これらの変更について、マスタープロキシを手動または自動でポーリングできます。これらの変更に基づき、PAC ファイルを自動的に生成するように各メンバーを設定できます。

また、プロキシ配列を連鎖して、階層ルーティングを作成することもできます。プロキシサーバーが受信した要求を上流のプロキシ配列にルーティングする場合、上流のプロキシ配列は親配列となります。つまり、クライアントがプロキシ X のドキュメントを要求し、プロキシ X にそのドキュメントがない場合、クライアントは直接リモートサーバーに要求を送信する代わりに、プロキシ配列 Y に要求を送信します。このため、プロキシ配列 Y が親配列になります。

図 12–5 で、プロキシ配列 1 はプロキシ配列 2 の親配列です。プロキシ配列 2 のメンバーは親配列の PAT ファイルへの更新をロードし、ポーリングします。通常は、親配列のマスタープロキシに対してポーリングします。要求された URL のハッシュアルゴリズムは、ダウンロードされた PAT ファイルを使用して計算されます。プロキシ配列 2 のメンバーは、プロキシ配列 1 の中で最もスコアの高いプロキシを通して要求された URL を取得します。図では、クライアントから要求された URL に関して最もスコアが高いのは、プロキシ B です。

図 12–5 プロキシからプロキシへのルーティング

プロキシからプロキシへのルーティングを示す図

プロキシ配列を設定する一般的な手順は次のようになります。

マスタープロキシから、次の手順を実行します。

  1. プロキシ配列を作成します。

    メンバーリストの作成の詳細については、「プロキシ配列メンバーリストの作成」を参照してください。

  2. PAT ファイルから PAC ファイルを生成します。

    PAC ファイルを生成する必要があるのは、クライアントからプロキシへのルーティングを使用する場合のみです。詳細については、「PAT ファイルからの PAC ファイルの生成」を参照してください。

  3. 配列のマスターメンバーを設定します。詳細については、「プロキシ配列メンバーの設定」を参照してください。

  4. プロキシ配列を経由したルーティングを有効にします。詳細については、「プロキシ配列を経由したルーティングの有効化」を参照してください。

  5. URL /pat を PAT ファイルにマップする PAT マッピングを作成します。

  6. プロキシ配列を有効にします。

    詳細については、「プロキシ配列の有効化または無効化」を参照してください。

マスター以外の各プロキシから、次の手順を実行します。

  1. 配列のマスター以外のメンバーを設定します。

    詳細については、「プロキシ配列メンバーの設定」を参照してください。

  2. プロキシ配列を経由したルーティングを有効にします。

    詳細については、「プロキシ配列を経由したルーティングの有効化」を参照してください。

  3. プロキシ配列を有効にします。

    詳細については、「プロキシ配列の有効化または無効化」を参照してください。


    注 –

    プロキシ配列が親配列を経由してルーティングされる場合、親配列を有効にし、各メンバーが親配列を経由して要求される URL にルーティングされるように設定する必要があります。詳細については、「親配列を経由したルーティング」を参照してください。


プロキシ配列メンバーリストの作成

プロキシ配列のメンバーリストの作成および更新は、配列のマスタープロキシからのみ行うことができます。プロキシ配列のメンバーリストは 1 度だけ作成する必要がありますが、いつでも変更できます。プロキシ配列メンバーリストを作成することにより、配列内のすべてのプロキシとダウンストリームプロキシに配布される PAT ファイルが生成されます。


注 –

プロキシ配列のメンバーリストへの変更または追加は、配列内のマスタープロキシからのみ実行します。配列内のほかのメンバーはすべて、メンバーリストの読み込みのみ可能です。


Procedureプロキシ配列メンバーリストを作成するには

  1. サーバーマネージャーにアクセスし、「Caching」タブをクリックします。

  2. 「Configure Proxy Array」リンクをクリックします。

    「Configure Proxy Array」ページが表示されます。

  3. 「Array name」フィールドに、配列の名前を入力します。

  4. 「Reload Configuration Every」フィールドに、PAT ファイルのポーリング間隔を分で入力します。

  5. 「Array Enabled」チェックボックスをクリックします。

  6. 「Create」ボタンをクリックします。

    「Create」ボタンは、プロキシ配列が作成されたあと、「了解」ボタンに変わります。


    注 –

    メンバーをメンバーリストに追加する前に、必ず「了解」をクリックしてください。


  7. [了解]をクリックします。

  8. 「Restart Required」をクリックします。

    「Apply Changes」ページが表示されます。

  9. プロキシ配列の各メンバーについて、次の内容を入力し、「了解」をクリックします。

    最初にマスターメンバーを追加してから、ほかのメンバーを追加してください。

    • 「名前」: メンバーリストに追加するプロキシサーバーの名前

    • 「IP アドレス」: メンバーリストに追加するプロキシサーバーの IP アドレス

    • 「ポート」: メンバーが PAT ファイルをポーリングするポート

    • 「負荷係数」: メンバーを経由してルーティングする相対的負荷を示す整数

    • 「状態情報」: メンバーの状態。値はオンまたはオフ。プロキシ配列メンバーを無効にした場合、メンバーの要求は別のメンバーに再ルーティングされます。


    注 –

    追加するプロキシ配列メンバーごとに情報を入力したあと、必ず「了解」をクリックしてください。


  10. 「Restart Required」をクリックします。

    「Apply Changes」ページが表示されます。

  11. 「Restart Proxy Server」ボタンをクリックして、変更を適用します。

プロキシ配列メンバーリスト情報の編集

プロキシ配列メンバーリスト内のメンバー情報は、いつでも変更できます。プロキシ配列メンバーリストは、マスタープロキシからのみ編集できます。


注 –

プロキシ配列のメンバーリストへの変更または追加は、配列内のマスタープロキシからのみ実行します。配列のほかのメンバーからこのリストを変更した場合、すべての変更内容は失われます。


Procedureメンバーリスト情報を編集するには

  1. サーバーマネージャーにアクセスし、「Caching」タブをクリックします。

  2. 「Configure Proxy Array」リンクをクリックします。

    「Configure Proxy Array」ページが表示されます。

  3. 「Member List」で、編集するメンバーの横のラジオボタンを選択します。

  4. 「編集」ボタンをクリックします。

    「Configure Proxy Array Member」ページが表示されます。

  5. 該当する情報を編集します。

  6. [了解]をクリックします。

  7. 「Restart Required」をクリックします。

    「Apply Changes」ページが表示されます。

  8. 「Restart Proxy Server」ボタンをクリックして、変更を適用します。


    注 –

    変更内容を有効にし、プロキシ配列のメンバーに配布する場合、「Configure Proxy Array」ページの「Configuration ID」を更新し、「了解」をクリックします。設定 ID を更新する場合、ID に 1 を加えます。


プロキシ配列メンバーの削除

プロキシ配列のメンバーを削除すると、プロキシ配列から削除されます。プロキシ配列のメンバーは、マスタープロキシからのみ削除できます。

Procedureプロキシ配列からメンバーを削除するには

  1. サーバーマネージャーにアクセスし、「Caching」タブをクリックします。

  2. 「Configure Proxy Array」リンクをクリックします。

    「Configure Proxy Array」ページが表示されます。

  3. 「Member List」で、削除するメンバーの横のラジオボタンを選択します。

  4. [削除]をクリックします。


    注 –

    変更内容を有効にし、プロキシ配列のメンバーに配布する場合、「Configure Proxy Array」ページの「Configuration ID」を更新し、「了解」をクリックします。設定 ID を更新する場合、ID に 1 を加えます。


  5. 「Restart Required」をクリックします。

    「Apply Changes」ページが表示されます。

  6. 「Restart Proxy Server」ボタンをクリックして、変更を適用します。

プロキシ配列メンバーの設定

プロキシ配列内のメンバーは 1 度だけ設定する必要があります。これは各メンバーから行います。配列のメンバーの設定は、別のメンバーからは行うことができません。また、マスタープロキシを設定する必要があります。

Procedureプロキシ配列の各メンバーを設定するには

  1. サーバーマネージャーにアクセスし、「Caching」タブをクリックします。

  2. 「Configure Proxy Array Member」リンクをクリックします。

    「Configure Proxy Array Member」ページが表示されます。

  3. 「Proxy Array」セクションで、適切なラジオボタンを選択し、メンバーが PAT ファイルをポーリングする必要があるかどうかを指定します。

    • 「Non-Master Member」: 設定するメンバーがマスタープロキシ以外の場合にこのオプションを選択します。マスタープロキシ以外のプロキシ配列メンバーは、マスタープロキシから PAT ファイルを取得するために、PAT ファイルをポーリングする必要があります。

    • 「Master Member」: マスタープロキシを設定する場合はこのオプションを選択します。マスタープロキシを設定する場合、PAT ファイルはローカルのため、ポーリングする必要はありません。

  4. 「Poll Host」フィールドに、PAT ファイルをポーリングするマスタープロキシの名前を入力します。

  5. 「Port」フィールドに、マスタープロキシが HTTP 要求を受け取るポートを入力します。

  6. 「URL」フィールドに、マスタープロキシの PAT ファイルの URL を入力します。マスタープロキシで、PAT ファイルを URL /pat にマッピングする PAT マッピングを作成している場合、「URL」フィールドに /pat と入力します。

  7. (オプション) 「Headers File」フィールドに、PAT ファイルに対する HTTP 要求 (認証情報など) とともに送信する必要がある特殊ヘッダー付きのファイルのフルパス名を入力します。

  8. [了解]をクリックします。

  9. 「Restart Required」をクリックします。

    「Apply Changes」ページが表示されます。

  10. 「Restart Proxy Server」ボタンをクリックして、変更を適用します。

プロキシ配列を経由したルーティングの有効化

Procedureプロキシ配列を経由したルーティングを有効にするには

  1. サーバーマネージャーにアクセスし、「Routing」タブをクリックします。

  2. 「Set Routing Preferences」リンクをクリックします。

    「Set Routing Preferences」ページが表示されます。

  3. ドロップダウンリストからリソースを選択するか、「Regular Expression」ボタンをクリックして正規表現を入力し、「了解」をクリックします。

  4. 「Route Through」オプションを選択します。

  5. 「proxy array」または「parent array」のチェックボックスを選択します。

    設定するプロキシサーバーがプロキシ配列のメンバーである場合のみ、プロキシ配列のルーティングを有効にできます。親配列が存在する場合、親ルーティングのみを有効にできます。いずれのルーティングオプションも、独立して使用されます。

  6. プロキシ配列経由でルーティングし、要求を別の URL にリダイレクトする場合、「redirect」チェックボックスを選択します。

    リダイレクトは、プロキシ配列のメンバーが処理できない要求を受け取った場合、クライアントに、その要求を照会するプロキシを伝えることを意味します。

  7. [了解]をクリックします。

  8. 「Restart Required」をクリックします。

    「Apply Changes」ページが表示されます。

  9. 「Restart Proxy Server」ボタンをクリックして、変更を適用します。

プロキシ配列の有効化または無効化

プロキシ配列を経由したルーティングを行わない場合、プロキシ配列オプションを無効にする前に、すべてのクライアントが特別な PAC ファイルを使用して正しくルーティングしていることを確認する必要があります。親配列オプションを無効にする場合、「Set Routing Preferences」ページで、明示的プロキシまたは直接接続など、有効な代替ルーティングオプションを設定する必要があります。

Procedureプロキシ配列を有効または無効にするには

  1. サーバーマネージャーにアクセスし、「Preferences」タブをクリックします。

  2. 「Configure System Preferences」リンクをクリックします。

    「Configure System Preferences」ページが表示されます。

  3. プロキシ配列を有効または無効にします。

    • プロキシ配列を有効にするには、有効にする配列の種類(通常のプロキシ配列または親配列) の「Yes」オプションをクリックします。

    • プロキシ配列を無効にするには「No」をクリックします。

  4. [了解]をクリックします。

  5. 「Restart Required」をクリックします。

    「Apply Changes」ページが表示されます。

  6. 「Restart Proxy Server」ボタンをクリックして、変更を適用します。

プロキシ配列の要求のリダイレクト

プロキシ配列経由のルーティングを選択する場合、要求を別の URL にリダイレクトするかどうかを指定する必要があります。リダイレクトは、プロキシ配列のメンバーが処理できない要求を受け取った場合、クライアントに、その要求を照会するプロキシを伝えることを意味します。

PAT ファイルからの PAC ファイルの生成

ほとんどのクライアントは PAT ファイル形式を認識しないため、クライアントからプロキシへのルーティングを使用するクライアントはプロキシ自動設定 (PAC) メカニズムを使用して、どのプロキシを経由するかについての情報を受け取ります。ただし、標準の PAC ファイルを使用する代わりに、クライアントは PAT ファイルから生成された特別な PAC ファイルを使用します。この特別な PAC ファイルは、ハッシュアルゴリズムを計算して、要求された URL に最適な経路を決定します。

PAC ファイルは PAT ファイルから手動で、または自動的に生成できます。プロキシ配列の特定のメンバーから手動で PAC ファイルを生成する場合、そのメンバーは PAT ファイルの現在の情報に基づいてただちに PAC ファイルを再生成します。プロキシ配列メンバーにPAC ファイルの自動生成を設定する場合、PAT ファイルが変更されたことを検出するたびに、メンバーは自動的にファイルを再生成します。


注 –

プロキシサーバーのプロキシ配列機能を使用していない場合、「Create/Edit Autoconfiguration File」ページを使用して PAC ファイルを生成します。詳細については、第 17 章クライアント自動設定ファイルの使用を参照してください。


ProcedurePAT ファイルから PAC ファイルを手動で生成するには

PAC ファイルは、マスタープロキシからのみ生成できます。

  1. マスタープロキシのサーバーマネージャーにアクセスし、「Caching」タブをクリックします。

  2. 「Configure Proxy Array」リンクをクリックします。

    「Configure Proxy Array」ページが表示されます。

  3. 「Generate PAC」ボタンをクリックします。

    「PAC Generation」ページが表示されます。

  4. PAC ファイルでカスタムロジックを使用する場合、「Custom logic file」フィールドに、PAC ファイルの生成時に組み込むカスタムロジックを含むファイル名を入力します。

    このロジックは、FindProxyForURL 関数のプロキシ配列の選択ロジックの前に挿入されます。この関数は、通常はプロキシ配列を経由する必要のないローカル要求で使用されます。

    プロキシ配列メンバーの設定時に、すでにカスタムロジックファイルを指定している場合、このフィールドにはその情報が表示されます。ここでカスタムロジックファイルの名前を編集できます。

  5. 「Default Route」フィールドに、配列内のプロキシが利用できないときにクライアントが利用する経路を入力します。

    プロキシ配列メンバーの設定時に、すでにデフォルト経路を指定している場合、このフィールドにはその情報が表示されます。ここでデフォルト経路を編集できます。

  6. [了解]をクリックします。

  7. 「Restart Required」をクリックします。

    「Apply Changes」ページが表示されます。

  8. 「Restart Proxy Server」ボタンをクリックして、変更を適用します。

ProcedurePAC ファイルを自動生成するには

  1. サーバーマネージャーにアクセスし、「Caching」タブをクリックします。

  2. 「Configure Proxy Array Member」リンクをクリックします。

    「Configure Proxy Array Member」ページが表示されます。

  3. 「Auto-generate PAC File」チェックボックスを選択します。

  4. PAC ファイルでカスタムロジックを使用する場合、「Custom Logic File」フィールドに、PAC ファイルの生成時に組み込むカスタムロジックを含むファイル名を入力します。

    このロジックは、FindProxyForURL 関数のプロキシ配列の選択ロジックの前に挿入されます。

    プロキシ配列の設定時に、すでにカスタムロジックファイルを指定し、保存している場合、このフィールドにはその情報が表示されます。ここでカスタムロジックファイルの名前を編集できます。

  5. 「Default Route」フィールドに、配列内のプロキシが利用できないときにクライアントが利用する経路を入力します。

    プロキシ配列の設定時に、すでにデフォルト経路を指定し、保存している場合、このフィールドにはその情報が表示されます。デフォルト経路を編集できます。

  6. [了解]をクリックします。

  7. 「Restart Required」をクリックします。

    「Apply Changes」ページが表示されます。

  8. 「Restart Proxy Server」ボタンをクリックして、変更を適用します。

親配列を経由したルーティング

直接リモートサーバーに接続する代わりに、上流の親配列を経由してルーティングするよう、プロキシまたはプロキシ配列のメンバーを設定できます。

Procedure親配列を経由してルーティングするには

  1. 親配列を有効にします。

    詳細については、「プロキシ配列の有効化または無効化」を参照してください。

  2. 親配列を経由するルーティングを有効にします。

    詳細については、「プロキシ配列を経由したルーティングの有効化」を参照してください。

  3. サーバーマネージャーにアクセスし、「Caching」タブをクリックします。

  4. 「Configure Proxy Array Member」リンクをクリックします。

    「Configure Proxy Array Member」ページが表示されます。

  5. このページの「Parent Array」セクションにある「Poll Host」フィールドに、PAT ファイルのポーリング対象にする親配列にあるプロキシのホスト名を入力します。

    このプロキシは、通常、親配列のマスタープロキシになります。

  6. このページの「Parent Array」セクションにある「ポート」フィールドに、PAT ファイルをポーリングする親配列にあるプロキシのポート番号を入力します。

  7. 「URL」フィールドに、マスタープロキシの PAT ファイルの URL を入力します。

    マスタープロキシで PAT マッピングを作成している場合、この「URL」フィールドにマッピングを入力する必要があります。

  8. (オプション) このフォームの「Parent Array」セクションにある「Headers File」フィールドに、PAT ファイルに対する HTTP 要求 (認証情報など) とともに送信する必要がある特殊ヘッダー付きのファイルのフルパス名を入力します。

    このフィールドは省略可能です。

  9. [了解]をクリックします。

  10. 「Restart Required」をクリックします。

    「Apply Changes」ページが表示されます。

  11. 「Restart Proxy Server」ボタンをクリックして、変更を適用します。

親配列情報の表示

プロキシ配列が親配列経由でルーティングする場合、親配列のメンバーの情報が必要です。この情報は PAT ファイルの形式で親配列から送信されます。

Procedure親配列情報を表示するには

  1. サーバーマネージャーにアクセスし、「Caching」タブをクリックします。

  2. 「View Parent Array Configuration」リンクをクリックします。

    「View Parent Array Configuration」ページが表示されます。

  3. 情報を表示します。