これは、リバース・プロキシー構成にのみ適用されます。
動的キャッシング機能により、Caching Proxy は IBM® WebSphere® Application Server によって生成された JavaServer Pages (JSP) およびサーブレットからの応答の形式で、動的に生成されたコンテンツをキャッシュできます。Caching Proxy アダプター・モジュールは、応答がアプリケーション・サーバーの動的キャッシュに キャッシュされるのに加えてプロキシー・サーバーでもキャッシュされるように、 アプリケーション・サーバーで応答を変更するのに使用されます。この機能を 使用すると、動的に生成されたコンテンツがネットワークのエッジでキャッシュされるため、 複数のクライアントが同じコンテンツを要求する場合に、コンテンツ・ホストは アプリケーション・サーバーに要求を繰り返すことから解放されます。
動的キャッシュ機能を 機能させるには、場合によっては、照会キャッシュを使用可能にする必要があります。例えば、サーブレットが 照会のフォームで URL を使用する場合などです。プロキシー・サーバーでは、疑問符 (?) が含まれている URL を照会として扱います。
動的に生成されたコンテンツのキャッシングにより、以下のような利点が得られます。
アプリケーション・サーバーでは、プロキシー・キャッシングの場合、完全に構成された 公開ページだけがエクスポートされます。プライベート・ページはプロキシーによってキャッシュされません。例えば、公開サイトから動的に生成され、現在の天気予報をリストしたページは、IBM WebSphere Application Server によってエクスポートし、Caching Proxy によりキャッシュすることができます。 しかし、動的に生成され、ユーザーのショッピング・カートのコンテンツをリストするページをプロキシー・サーバーによってキャッシュすることはできません。 また、動的に生成されたページをキャッシュするには、そのページのサブコンポーネント もすべてキャッシュ可能でなければなりません。
キャッシュされた動的ファイルは、通常のファイルのように有効期限が切れることはありません。これらは、これらを生成したアプリケーション・サーバーによって無効にすることができます。
次の状況では、動的キャッシュの項目が無効化されます。
動的キャッシュ項目の無効化は、 Caching Proxy 動的キャッシング・プラグインの特定の インスタンスに対する無効化 (Invalidate) メッセージの生成によって行われます。 Caching Proxy は、/WES_External_Adapter リソース・ロケーターへの通知として 無効化 (Invalidate) メッセージを受信します。Caching Proxy は、次に、無効な項目をそのキャッシュから消去します。
動的キャッシングには次の構成ステップが必要です。
ローカル動的キャッシュ (動的フラグメント・キャッシュとも呼ばれる) を使用するように アプリケーション・サーバーを構成する場合は、IBM WebSphere Application Server 資料の説明に従ってください。 動的フラグメント・キャッシュは Application Server Caching Proxy の外部キャッシュと相互作用します。
IBM WebSphere Application Server は、Application Server と共にインストールされる外部キャッシュ・アダプター (External Cache Adapter) と呼ばれるソフトウェア・モジュールを使用して、Caching Proxy と通信します。
動的に生成されたコンテンツ (サーブレットおよび JSP からの結果) をプロキシー・サーバーで キャッシュ可能にするには、プロキシー構成ファイル ibmproxy.conf に 2 つの変更を 行う必要があります。最初の変更は、動的キャッシング・プラグイン・モジュールを 使用可能にすることで、2 番目の変更は、キャッシュ可能な動的コンテンツの送信元を このモジュールが認識するように構成することです。
Service ステップの API ディレクティブは、動的キャッシング・プラグインを 使用可能にするのに使用されます。このディレクティブを作成するには、ibmproxy.conf ファイルを 手作業で編集するか、あるいはプロキシー・サーバーが既に実行中であれば、「構成および管理」フォームを 使用して、「サーバー構成」–>「要求処理」–>「API 要求処理」を選択します。ディレクティブの内容は、このセクションの後の方にある例で示されます。
動的キャッシングを使用可能にする Service ディレクティブのプロトタイプ は、ibmproxy.conf ファイルの API セクションにコメントとして存在しています。そこ には JSP Plug-in という見出しがあります。プロトタイプ の API ディレクティブは、目的別の順序で配列されていることに注意してください。 API ディレクティブを追加して新しい機能やプラグイン・モジュールを使用できるようにするには、各ディレクティブを構成ファイルのプロトタイプ・セクションに示されているように配列してください。オプションで、 コメント文字をプロトタイプ API ディレクティブから除去し、必要に応じてそれらを 編集して、所要のそれぞれの機能またはプラグインのサポートを組み込むことができます。
次の例に示されるように、Service ディレクティブを設定します。(プロキシー構成ファイル では、それぞれのディレクティブは単一行になければならないことに注意してください。 次の例では、読みやすくするために改行されている場合があります。)
Service /WES_External_Adapter /opt/ibm/edge/cp/lib/plugins/
dynacache/libdyna_plugin.o:exec_dynacmd
Service /WES_External_Adapter /opt/ibm/edge/cp/lib/plugins/
dynacache/libdyna_plugin.so:exec_dynacmd
Service /WES_External_Adapter /usr/lib/libdyna_plugin.so:exec_dynacmd
Service /WES_External_Adapter C:¥Program Files¥IBM¥edge¥cachingproxy¥cp¥bin¥plugins¥
dynacache¥dyna_plugin.dll:exec_dynacmd
Caching Proxy ソフトウェアをデフォルト以外のディレクトリーにインストールしている場合は、 これらの例のパスについて、インストール・パスを置き換えてください。
各 Caching Proxy は動的に生成されるファイルの送信元を認識するように構成する必要もあります。 この プロキシー・サーバー. で動的に生成されたコンテンツをキャッシュに入れるアプリケーション・サーバーごとに、 ExternalCacheManager ディレクティブを ibmproxy.conf ファイルに追加してください。このディレクティブでは、 プロキシーで結果をキャッシュに入れる WebSphere Application Server が指定され、そのサーバーからのコンテンツについての 最大有効期間時間が設定されます。 詳細は、ExternalCacheManager - IBM WebSphere Application Server からの動的キャッシング用の Caching Proxy の構成 に示されています。
ExternalCacheManager ディレクティブで使用されるサーバー ID は、アプリケーション・ サーバーの dynacache.xml ファイルの外部キャッシュ・グループ・スタンザで 使用されるグループ ID と一致していなければなりません。
前述の例では、以下の項目を個々のプロキシーの ibmproxy.conf ファイルに追加します。
ExternalCacheManager IBM-edge-cp-XYZ-1 20 seconds
Caching Proxy は、IBM WebSphere Application Server からそのグループ ID が ibmproxy.conf ファイルの ExternalCacheManager 項目と一致するコンテンツだけをキャッシュします。