各仮想サーバーに対して、キャッシュ、圧縮、ルーティング、サービス品質、ログ・ファイルおよびWebアプリケーション・ファイアウォール設定を個別に設定できます。
この章では、仮想サーバーを作成、表示、変更および削除する方法、およびキャッシュを構成する方法を説明します。内容は次のとおりです。
構成の作成時、仮想サーバーは、構成と同じ名前で自動的に作成され、構成の作成時に指定されたHTTPリスナーに関連付けられます。仮想サーバーに対してデフォルトのルーティング・ルールも作成され、関連付けられたHTTPリスナーで受信したすべてのリクエストが、構成の作成時に指定されたオリジン・サーバーに分散されます。
次のトピックの説明に従い、Fusion Middleware ControlまたはWLSTのいずれかを使用して、構成内に追加の仮想サーバーを作成できます。
注意:
仮想サーバーを作成すると、実質的には構成が変更されます。新規仮想サーバーをOracle Traffic Directorインスタンスに反映するには、「構成の変更のアクティブ化」の説明に従って構成を再デプロイする必要があります。
始める前に
仮想サーバーの作成を開始する前に、次の項目を決定します。
仮想サーバーの一意の名前。仮想サーバーを作成した後名前は変更できないため、名前は慎重に選択してください。
1つ以上の一意のリスニング・ポート。リスナーの作成の詳細は、「リスナーの管理」を参照してください。
仮想サーバーがリクエストを処理するために必要なホストまたはホスト・パターンの名前。
リクエストを受信すると、Oracle Traffic Directorは、リクエストのHost
ヘッダーを、構成内の各仮想サーバーに定義されたホスト・パターンと比較して、リクエストを処理する仮想サーバーを決定します。
リクエストは、リクエスト内のHost
ヘッダーと一致するホスト・パターンを持つ最初の仮想サーバーにルーティングされます。
リクエストのHost
ヘッダーが、各仮想サーバーに定義されているホスト・パターンのいずれとも一致しない、またはリクエストにHost
ヘッダーが含まれていない場合、リクエストは、リクエストの受信に使用されたHTTPリスナーに関連付けられたデフォルトの仮想サーバーにルーティングされます。
注意:
「厳密なSNIホスト一致」がHTTPリスナーに対して有効化されていて、そのリスナーに対し、仮想サーバーの少なくとも1つに証明書がある場合、次の条件のいずれかが真であれば、Oracle Traffic Directorにより403-Forbidden
エラーがクライアントに返されます。
SSL/TLSハンドシェイク中、クライアントからSNIホスト拡張が送信されませんでした。
リクエストに、Host:
ヘッダーがありません。
SSL/TLSハンドシェイク中にSNIホスト拡張でクライアントから送信されたホスト名が、リクエスト内のHost:
ヘッダーと一致しません。
仮想サーバーがリクエストを転送するオリジン・サーバー・プールの名前。オリジン・サーバー・プールの作成の詳細は、「オリジン・サーバー・プールの管理」を参照してください。
仮想サーバーを作成するには、otd_createVirtualServer
コマンドを実行します。
たとえば、次のコマンドでは、構成foo
にbar
という名前の仮想サーバーが作成され、オリジン・サーバー・プールorigin-server-pool-1
にクライアントのリクエストを転送する仮想サーバーが構成されます。
props = {} props['configuration'] = 'foo' props['virtual-server'] = 'bar' props['origin-server-pool'] = 'origin-server-pool-1' otd_createVirtualServer(props)
仮想サーバーを作成した後、仮想サーバーの現在のリストを表示できます。仮想サーバーのリストを表示するには、otd_listVirtualServers
コマンドを実行します。
内容
次のトピックの説明に従い、Fusion Middleware ControlまたはWLSTのいずれかを使用して、仮想サーバーのリストを表示できます。
仮想サーバーを追加した後、設定の一部(ホスト・パターン、HTTPリスナー、言語オプションなど)を変更する必要がある場合があります。
次のトピックの説明に従い、Fusion Middleware ControlまたはWLSTのいずれかを使用して、仮想サーバーを変更できます。
注意:
仮想サーバーを変更すると、実質的には構成が変更されます。新規仮想サーバーの設定をOracle Traffic Directorインスタンスに反映するには、「構成の変更のアクティブ化」の説明に従って構成を再デプロイする必要があります。
WLSTでは、仮想サーバーの特定のパラメータの変更に使用できるいくつかのコマンドが用意されています。
表9-1 仮想サーバー変更用のWLSTコマンド
タスク | WLSTコマンド |
---|---|
仮想サーバーの有効化または無効化、ホスト、HTTPリスナー、ログ・ファイルの名前および場所の変更、RSAまたはECC証明書(あるいはその両方)を関連付けることによるSSL/TLSの有効化(RSAおよびECC証明書およびログ・プリファレンスの構成も参照) |
|
ルートの作成および管理(「ルートの構成」を参照) |
|
キャッシュ・ルールの作成および管理(「Oracle Traffic Directorにおけるキャッシュ」を参照) |
|
圧縮ルールの作成および管理(「コンテンツ圧縮の有効化と構成」を参照) |
|
リクエスト制限の設定の変更 |
|
コンテンツ・ルールの作成および管理(「Fusion Middleware Controlを使用したコンテンツの提供」を参照) |
|
エラー・ページの作成および管理 |
|
たとえば、次のコマンドでは、仮想サーバーbar
と関連付けられているHTTPリスナーの名前がhttp-listener-1
に変更されます。
props = {} props['configuration'] = 'foo' props['virtual-server'] = 'bar' props['http-listener-name'] = 'http-listener-1' otd_setVirtualServerProperties(props)
構成の作成時、仮想サーバーは、構成の作成時に指定されたリスナーで自動的に作成されます。自動的に作成された仮想サーバーの他、後で構成に追加された仮想サーバーについても、デフォルトのルートが作成されます。デフォルト・ルートのルールでは、仮想サーバーへのすべてのリクエストを、仮想サーバーの作成時に指定したオリジン・サーバー・プールにルーティングするように指定されます。仮想サーバーのデフォルト・ルートは削除できませんが、そのプロパティを変更することはできます。
指定した条件を満たすリクエストを、特定のオリジン・サーバー・プールにルーティングするように、仮想サーバーに追加のルートを作成できます。たとえば、銀行業のソフトウェア・ソリューションで、ローンおよび預金の顧客取引が別々のアプリケーションによって処理される場合、これらの各アプリケーションを、Oracle Traffic Directorインスタンスの背後にある別々のオリジン・サーバー・プールでホストできます。顧客のリクエストがローンまたは預金のいずれのアプリケーションに関連するかに応じて、リクエストを適切なオリジン・サーバー・プールにルーティングするために、次のように2つのルートを設定できます。
ルート1: リクエストURIが/loan
で始まる場合、ローン・アプリケーションをホストするオリジン・サーバー・プールにリクエストを送信します。
ルート2: リクエストURIが/deposit
で始まる場合、預金アプリケーションをホストするオリジン・サーバー・プールにリクエストを送信します。
複数のルートで構成されている仮想サーバーがリクエストを受信すると、使用可能な各ルートに対してリクエストのURIをチェックします。ルートは、作成された順にチェックされます。
リクエストがルートの条件を満たす場合、Oracle Traffic Directorはそのルートに指定されたオリジン・サーバー・プールにリクエストを送信します。
リクエストが、定義されたいずれのルートの条件とも一致しない場合、Oracle Traffic Directorは、デフォルト・ルートで指定されているオリジン・サーバー・プールにリクエストを送信します。
WebSocketアップグレードはデフォルトで有効になります。Fusion Middleware Controlで、「WebSocketアップグレード」チェック・ボックスを使用して、ルートのWebSocketプロトコルを有効または無効にします。同様に、WebSocketプロトコルはwebsocket-upgrade-enabled
プロパティでも有効または無効にできます。これは、otd_setRouteProperties
というWLSTコマンドで設定できます。
次のトピックの説明に従って、Fusion Middleware ControlまたはWLSTのいずれかを使用して、仮想サーバー内のルートを構成できます。
「グラフィカル・ユーザー・インタフェース - Fusion Middleware Control」の説明に従って、Fusion Middleware Controlにログインします。
ページの左上隅にある「WebLogicドメイン」ボタンをクリックします。
「管理」→「OTD構成」を選択します。
使用可能な構成のリストが表示されます。
ルートを構成する構成を選択します。
「共通タスク」ペインの「Traffic Director構成」をクリックします。
「管理」→「仮想サーバー」を選択します。
「仮想サーバー」ページが表示されます。
ナビゲーション・ペインで、「仮想サーバー」を展開し、ルートを構成する仮想サーバーの名前を展開して、「ルート」を選択します。
「ルート」ページが表示されます。仮想サーバーに現在定義されているルートがリストされます。
ルートの作成
「作成」をクリックします。
「新規ルート」ダイアログ・ボックスが表示されます。
注意:
小文字のみ使用できます。値に大文字が含まれる場合は、通知されることなく小文字に変更されます。「オリジン・サーバー・プール」フィールドで、指定された条件を満たすリクエストがルーティングされるオリジン・サーバー・プールを選択します。
「条件情報」ペインで「変数/関数」を選択し、各ドロップダウン・リストから演算子を選択し、「値」フィールドに値を入力します。
複数の式を構成する場合は、ドロップダウン・リストでand
/or
演算子を選択します。同様に、指定した式が偽に評価されるときにルートを適用する場合は、Not
演算子を使用します。
「OK」をクリックします。
条件を手動入力するには、「取消」をクリックし、「式の編集」をクリックし、開かれる新しいウィンドウで「手動編集」をクリックします。「条件」フィールドで、ルーティング・ルールが適用される条件を指定します。条件式の作成の詳細は、「条件」フィールドの近くにあるヘルプ・ボタンをクリックするか、Oracle Traffic Director構成ファイル・リファレンスの変数、式、ワイルドカードおよび文字列の補間の使用を参照してください。
「OK」をクリックします。
作成したルートが「ルート」ページに表示されます。
ルートの編集
ルートの設定を変更するには、次の操作を行います。
「名前」をクリックして、ルートの「編集」ボタンを選択します。
ルート設定ページが表示されます。
変更するパラメータを指定します。
画面上のヘルプおよびプロンプトがすべてのパラメータに提供されています。
フィールドの値を変更する、または変更したテキスト・フィールドからタブアウトすると、ページの右上隅にある「OK」ボタンが有効になります。
「取消」ボタンをクリックすることで、いつでも変更を破棄できます。
必要な変更を行った後、「OK」をクリックします。
更新された設定が保存されます。
ルーティング・ルールの削除
ルーティング・ルールを削除するには、「削除」ボタンをクリックします。確認プロンプトで、「OK」です。
ルートを作成するには、otd_createRoute
コマンドを実行します。
例:
次のコマンドでは、構成foo
の仮想サーバーbar
にloan-route
という名前のルートが作成され、このルートでは、パターン/loan
に一致するURIを持つリクエストがオリジン・サーバー・プールloan-app
に送信されます。
props = {} props['configuration'] = 'foo' props['virtual-server'] = 'bar' props['route'] = 'loan-route' props['origin-server-pool'] = 'loan-app' props['condition'] = "headers{'content-length'} < 400" otd_createRoute(props)
次のコマンドでは、構成foo
の仮想サーバーbar
にimages-route
という名前のルートが作成され、このルートでは、パターン/images
に一致するURIパスを持つリクエストがオリジン・サーバー・プールimages-repo
に送信されます。
props = {} props['configuration'] = 'foo' props['virtual-server'] = 'bar' props['route'] = 'images-route' props['origin-server-pool'] = 'images-repo' props['condition'] = '$path='/images/*'' otd_createRoute(props)
次のコマンドでは、構成foo
の仮想サーバーbar
にsubnet-route
という名前のルートが作成され、このルートでは、サブネット130.35.46.*
のクライアントからのリクエストがオリジン・サーバー・プールdedicated-osp
に送信されます。
props = {} props['configuration'] = 'foo' props['virtual-server'] = 'bar' props['route'] = 'subnet-route' props['origin-server-pool'] = 'dedicated-osp' props['condition'] = '$ip='130.35.46.*'' otd_createRoute(props)
次のコマンドでは、構成foo
の仮想サーバーbar
にbody-route
という名前のルートが作成され、このルートでは、本文にalphaという言葉が含まれているリクエストがオリジン・サーバー・プールdedicated-osp
にルーティングされます。
props = {} props['configuration'] = 'foo' props['virtual-server'] = 'bar' props['route'] = 'body-route' props['origin-server-pool'] = 'dedicated-osp' props['condition'] = '$body ='alpha'' otd_createRoute(props)
condition
プロパティの値は、正規表現にする必要があることに注意してください。条件式の作成の詳細は、Oracle Traffic Director構成ファイル・リファレンスの変数、式、ワイルドカードおよび文字列の補間の使用を参照してください。
仮想サーバーに定義されているルートのリストを表示するには、次の例に示すように、otd_listRoutes
コマンドを実行します。
props = {} props['configuration'] = 'foo' props['virtual-server'] = 'bar' otd_listRoutes(props)
ルートのプロパティを表示するには、次の例に従い、otd_getRouteProperties
コマンドを実行します。
props = {} props['configuration'] = 'foo' props['virtual-server'] = 'bar' props['route'] = 'loan-route' otd_getRouteProperties(props)
keep-alive-timeout=15 sticky-cookie=JSESSIONID condition="$uri = '/loan'" validate-server-cert=true always-use-keep-alive=false origin-server-pool=origin-server-pool-1 sticky-param=jsessionid route-header=Proxy-jroute rewrite-headers=location,content-location use-keep-alive=true route=loan-route log-headers=false route-cookie=JROUTE timeout=300
ルートのプロパティを変更するには、otd_setRouteProperties
コマンドを実行します。
例:
たとえば、次のコマンドでは、構成foo
の仮想サーバーbar
内のroute-1
という名前のルートに対するWebSocketアイドル・タイムアウトの設定が1200秒に変更されます。
props = {} props['configuration'] = 'foo' props['virtual-server'] = 'bar' props['route'] = 'route-1' props['websocket-idle-timeout'] = '1200' otd_setRouteProperties(props)
次のコマンドでは、構成foo
の仮想サーバーbar
内のdefault-route
という名前のルートと関連付けられているオリジン・サーバーとの間でOracle Traffic Directorが送受信するヘッダーのロギングが有効になります。
props = {} props['configuration'] = 'foo' props['virtual-server'] = 'bar' props['route'] = 'default-route' props['log-headers'] = 'true' otd_setRouteProperties(props)
WebSocketサポートを無効にするには、次の例に示すように、otd_setRouteProperties
コマンドをwebsocket-upgrade-enabled
プロパティを指定して実行します。
props = {} props['configuration'] = 'foo' props['virtual-server'] = 'bar' props['route'] = 'default-route' props['websocket-upgrade-enabled'] = 'false' otd_setRouteProperties(props)
ルートを削除するには、次の例に示すように、otd_deleteRoute
コマンドを実行します。
props = {} props['configuration'] = 'foo' props['virtual-server'] = 'bar' props['route'] = 'route-1' otd_deleteRoute(props)
既存の仮想サーバーに似た仮想サーバーを作成する場合、既存の構成をコピーして、必要な変更を後で行うことができます。
内容
注意:
仮想サーバーをコピーすると、実質的には構成が変更されます。新規仮想サーバーをOracle Traffic Directorインスタンスに反映するには、「構成の変更のアクティブ化」の説明に従って構成を再デプロイする必要があります。
次のトピックの説明に従い、Fusion Middleware ControlまたはWLSTのいずれかを使用して、仮想サーバーをコピーできます。
不要になった仮想サーバーを削除できます。仮想サーバー・インスタンスを削除するには、otd_deleteVirtualServer
コマンドを実行します。
内容
次のトピックの説明に従い、Fusion Middleware ControlまたはWLSTのいずれかを使用して、仮想サーバーのインスタンスを削除できます。
頻繁にリクエストされるデータをキャッシュすることで、クライアントがレスポンスを待機する時間が削減されます。また、頻繁にアクセスされるオブジェクト(レスポンス本文およびヘッダー)がメモリー内に格納されると、オリジン・サーバーの負荷が大幅に低減されます。
キャッシュを有効にするには、キャッシュ・ルールを構成する必要があります。
オリジン・サーバーから静的および動的に生成されたコンテンツの両方がキャッシュされます。
成功したレスポンス(レスポンス・コード: 200
)のみがキャッシュされます。
HTTP GETおよびHEADリクエストへのレスポンスのみがキャッシュされます。
Oracle Traffic Directorは、レスポンスの本文、およびDest-IP
、Proxy-Agent
、Proxy-Connection
、Server
、Set-Cookie
、State-Info
およびStatus
を除くすべてのレスポンス・ヘッダーをキャッシュします。
Oracle Traffic Directorは、コンテンツを再検証するディレクティブ、特定のヘッダーをキャッシュしないディレクティブなど、オリジン・サーバーからのCache-Control
ディレクティブに従います。
各仮想サーバーに固有の1つ以上のキャッシュ・ルールを構成できます。これらのルールは、最大ヒープ領域、最大入力数および最大オブジェクト・サイズなど、構成に指定された全体の制限に影響を受けます。
キャッシュ・ルールは、すべてのリクエストに適用するようにも、指定された条件に一致するリクエストのみに適用するようにも構成できます。
キャッシュされたデータは、仮想サーバーごとに別々にプロセス・メモリー(ヒープ)内に保持されます。インスタンスが停止または再起動されると、キャッシュは空になります。
WebSocketアップグレード・リクエストはキャッシュされません。
クライアントが最初にオブジェクトをリクエストすると、Oracle Traffic Directorはリクエストをオリジン・サーバーに送信します。このリクエストはキャッシュ・ミスになります。リクエストされたオブジェクトがキャッシュ・ルールに一致する場合、Oracle Traffic Directorオブジェクトをキャッシュします。同じオブジェクトの後続のリクエストについて、Oracle Traffic Directorはそのキャッシュのオブジェクトをクライアントに提供します。このようなリクエストは、キャッシュ・ヒットとなります。
Oracle Traffic Directorのキャッシュの動作は、RFC 2616の13項の仕様と整合性が取れています。http://www.w3.org/Protocols/rfc2616/rfc2616-sec13.html
を参照してください。
キャッシュ設定の表示
構成の現在のキャッシュ設定を表示するには、次の例に示すように、otd_getCacheProperties
コマンドを実行します。
props = {} props['configuration'] = 'foo' otd_getCacheProperties(props)
enabled=true max-entries=1024 replacement=lru max-heap-object-size=524288 max-heap-size=10485760
仮想サーバーに定義されているキャッシュ・ルールのリストを表示するには、次の例に示すように、otd_listCacheRules
コマンドを実行します。
props = {} props['configuration'] = 'foo' props['virtual-server'] = 'bar' otd_listCacheRules(props)
cache-rule-1 cache-rule-2
仮想サーバー固有のキャッシュ・ルールの現在の設定を表示するには、次の例に示すように、otd_getCacheRuleProperties
コマンドを実行します。
props = {} props['configuration'] = 'foo' props['virtual-server'] = 'bar' props['cache-rule'] = 'cache-rule-1' otd_getCacheRuleProperties(props) condition="$uri = '^/images" enabled=true max-reload-interval=3600 min-reload-time=0 last-modified-factor=0 min-object-size=1 cache-https-response=true rule=cache-rule-2 query-maxlen=0 compression=true cache-http-response=false
キャッシュ・メトリックの表示
プレーンテキストperfdump
レポートで、現在のキャッシュ・ヒット率、キャッシュ・ヒープ使用量、およびキャッシュ・エントリの再検証成功率を、次の例に示すように表示できます。
Proxy Cache: --------------------------- Proxy Cache Enabled yes Object Cache Entries 42 Cache lookup (hits/misses) 183/79 Requests served from Cache 22 Revalidation (successful/total) 30/38 ( 78.95%) Heap space used 16495
Proxy Cache Enabled
は、インスタンスに対してキャッシュが有効であるかどうかを示します。
Object Cache Entries
は、キャッシュ内に現在存在するエントリ(URI)の数です。
Cache lookup (hits/misses)
最初の数値は、リクエストされたURIに対してキャッシュ内でエントリが見つかった回数です。
2番目の数値は、リクエストされたURIがキャッシュ内で見つからなかった回数です。
Requests served from Cache
は、Oracle Traffic Directorがキャッシュから提供したリクエストの数です。
Revalidation (successful/total)
最初の番号は、キャッシュされたコンテンツの再検証が成功した回数です。
2番目の数値は、Oracle Traffic Directorが、キャッシュされたコンテンツの再検証を試みた合計回数です。
パーセント値は、再検証試行合計回数に対する再検証成功回数の割合です。
Heap space used
は、現在使用中のキャッシュ・ヒープ領域の量です。
キャッシュは、キャッシュ・ヒット率が高い場合、つまり比較的大量のリクエストがオリジン・サーバーに送信されるのではなく、キャッシュから提供される場合、クライアントへのレスポンス時間を短くできるという点で有効と考えられます。キャッシュ・ヒット率を高くするには、オリジン・サーバーからのキャッシュ可能なレスポンスを格納するために十分なメモリーが必要であり、キャッシュ内のエントリを定期的に検証する必要があります。
注意:
動的なコンテンツは一般的にキャッシュできません。このため、オリジン・サーバーによって提供されるアプリケーションまたはコンテンツが、ほとんど動的コンテンツで構成されている場合、キャッシュ・ヒット率は低くなる傾向があります。この場合、キャッシュを有効化してチューニングしても、パフォーマンスは大幅に向上しない可能性があります。
キャッシュ・ヒット率を向上させるために、次のキャッシュ・パラメータをチューニングできます。
キャッシュ・エントリ置換メソッド
キャッシュが一杯になると、つまりエントリ数が最大エントリ制限に到達する、またはキャッシュ・ヒープ・サイズが最大キャッシュ・ヒープ領域に到達すると、その後のキャッシュ・エントリは、既存のエントリが削除された場合のみ格納できます。キャッシュ・エントリの置換メソッドは、Oracle Traffic Directorにおいてキャッシュから削除できるエントリを決定する方法を指定します。
デフォルトの置換メソッドは、「最近最も使用されていない」(lru
)メソッドです。キャッシュが一杯になると、Oracle Traffic Directorは、最近最も使用されていないエントリを最初に破棄します。
もう1つのメソッドは、「最も使用頻度が低い」(lfu
)メソッドです。キャッシュが一杯になると、Oracle Traffic Directorは、最も使用頻度が低いエントリを最初に破棄します。
いずれのメソッドでも、Oracle Traffic Directorがキャッシュからコンテンツを提供するごとに、使用状況の情報(lru
置換メソッドの場合コンテンツが提供された時間、lfu
置換メソッドの場合コンテンツが提供された回数)を追跡する必要があります。このため、オリジン・サーバーにリクエストを送信するのではなく、キャッシュから直接コンテンツを提供することで短縮できる時間は、使用状況の情報を追跡するために必要な待機時間によってある程度は相殺されます。2つのメソッドでは、lru
の方が必要な演算リソースがわずかに少なくなります。
置換メソッドとしてfalse
を指定することで、キャッシュ・エントリの置換を無効化できます。
最大キャッシュ・ヒープ領域
使用可能なヒープ領域のうち少量しか使用されていない場合、仮想サーバー固有のキャッシュ・ルールの定義が絞り込まれすぎているため、レスポンスがキャッシュされていない可能性があります。
最適なキャッシュ・ヒープ・サイズは、システム・メモリーにどれほどの空きがあるかによって異なります。キャッシュ・ヒープが大きい場合、Oracle Traffic Directorはより多くのコンテンツをキャッシュできるため、ヒット率はより高くなります。ただし、キャッシュされたコンテンツのページングがオペレーティング・システムによって開始されるため、ヒープ・サイズは大きくしすぎないでください。
キャッシュ内のエントリの最大数
キャッシュ内のエントリ数が、perfdump
レポートに示されるように、一貫して最大エントリ数に近いまたは同数である場合、キャッシュのサイズが十分ではないことを意味します。最大エントリ数を増やすことを検討してください。
キャッシュ内のエントリ数が、許可されている最大エントリ数と比較して非常に少ない場合、仮想サーバー固有のキャッシュ・ルールの定義が絞り込まれすぎているため、レスポンスがキャッシュされていない可能性があります。
キャッシュ可能なオブジェクトの最大サイズ
システム・リソースを一定に保つために、オブジェクトが別のキャッシュ・ルールを満たしていても、キャッシュするオブジェクトのサイズを制限することができます。
キャッシュ・オブジェクトの最大サイズより大きいオブジェクトが頻繁にリクエストされる場合は、制限サイズを大きくすることを検討してください。
特定の仮想サーバーのキャッシュ・ルールでは、次のパラメータを指定できます。
キャッシュ可能なオブジェクトの最小サイズおよび最大サイズ
キャッシュ検証チェック間の最小間隔および最大間隔
キャッシュできる問合せ文字列内の最大文字数
キャッシュする前にコンテンツを圧縮するかどうか
HTTPSレスポンスをキャッシュするかどうか
Fusion Middleware ControlまたはWLSTのいずれかを使用して、キャッシュ設定をチューニングできます。
Fusion Middleware Controlを使用したキャッシュ設定の構成
Fusion Middleware Controlを使用してキャッシュ設定を構成するには、次を実行します。
「Fusion Middleware Controlの表示」の説明に従って、Fusion Middleware Controlにログインします。
ページの左上隅にある「WebLogicドメイン」ボタンをクリックします。
「管理」→「OTD構成」を選択します。
使用可能な構成のリストが表示されます。
変更する構成を選択します。
「共通タスク」ペインの「Traffic Director構成」をクリックします。
「管理」→「仮想サーバー」を選択します。
「仮想サーバー」ページが表示されます。
ナビゲーション・ペインで、「仮想サーバー」を展開し、キャッシュを構成する仮想サーバーの名前を展開して、「キャッシュ」を選択します。
「キャッシュ・ルール」ページが表示されます。仮想サーバーに現在定義されているキャッシュ・ルールがリストされます。
ナビゲーション・ペインで、「詳細設定」を選択します。
「詳細設定」ページが表示されます。
変更するキャッシュ・パラメータを指定します。
画面上のヘルプおよびプロンプトがすべてのパラメータに提供されています。
フィールドの値を変更する、または変更したテキスト・フィールドからタブアウトすると、ページの右上隅にある「OK」ボタンが有効になります。
「取消」ボタンをクリックすることで、いつでも変更を破棄できます。
必要な変更を行った後、「OK」をクリックします。
更新された構成が保存されたことを確認するメッセージが、「コンソール・メッセージ」ペインに表示されます。
Fusion Middleware Controlを使用した仮想サーバー固有のキャッシュ・ルールの構成
Fusion Middleware Controlを使用して仮想サーバー固有のキャッシュ・ルールを作成するには、次を実行します。
「Fusion Middleware Controlの表示」の説明に従って、Fusion Middleware Controlにログインします。
ページの左上隅にある「WebLogicドメイン」ボタンをクリックします。
「管理」→「OTD構成」を選択します。
使用可能な構成のリストが表示されます。
仮想サーバー固有のキャッシュ・ルールを作成する構成を選択します。
「共通タスク」ペインの「Traffic Director構成」をクリックします。
「管理」→「仮想サーバー」を選択します。
「仮想サーバー」ページが表示されます。
ナビゲーション・ペインで、「仮想サーバー」を展開し、キャッシュ・ルールを作成する仮想サーバーの名前を展開して、「キャッシュ」を選択します。
「キャッシュ」ページが表示されます。仮想サーバーに現在定義されているキャッシュ・ルールがリストされ、そのキャッシュ・ルールが有効化されているかどうかが示されます。
キャッシュ・ルールの作成
「新規キャッシュ・ルール」をクリックします。
「新規キャッシュ・ルール」ダイアログ・ボックスが表示されます。
注意:
小文字のみ使用できます。値に大文字が含まれる場合は、通知されることなく小文字に変更されます。「OK」をクリックします。
作成したキャッシュ・ルールが「キャッシュ」ページに表示されます。
キャッシュ・ルールの編集
キャッシュ・ルールを有効化または無効化する、あるいはルールの設定を変更するには、次の操作を行います。
編集するキャッシュ・ルールの「名前」をクリックします。
「キャッシュ・ルールの編集」ダイアログ・ボックスが表示されます。
注意:
条件ビルダーにアクセスして条件を編集するには、「条件を満たすリクエスト」を選択し、「編集」をクリックします。条件ビルダーでは古い式を削除したり、新しい式を作成したりできます。
変更するパラメータを指定します。
画面上のヘルプおよびプロンプトがすべてのパラメータに提供されています。
条件式の作成の詳細は、「条件」フィールドの近くにあるヘルプ・ボタンをクリックするか、Oracle Traffic Director構成ファイル・リファレンスの変数、式および文字列の補間の使用を参照してください。
フィールドの値を変更する、または変更したテキスト・フィールドからタブアウトすると、ページの右上隅にある「保存」ボタンが有効になります。
「リセット」ボタンをクリックすることで、いつでも変更を破棄できます。
必要な変更を行った後、「保存」をクリックします。
更新された構成が保存されたことを確認するメッセージが、「コンソール・メッセージ」ペインに表示されます。
キャッシュ・ルールの削除
キャッシュ・ルールを削除するには、「削除」ボタンをクリックします。確認プロンプトで、「OK」です。
WLSTを使用したキャッシュ設定の構成
構成のキャッシュ・プロパティを変更するには、otd_setCacheProperties
コマンドを実行します。
たとえば、次のコマンドでは、最大キャッシュ・ヒープ領域が20MBに変更されます。
props = {} props['configuration'] = 'foo' props['max-heap-space'] = '20971520' otd_setCacheProperties(props)
仮想サーバーのキャッシュ・ルールを作成するには、otd_createCacheRule
コマンドを実行します。
たとえば、次のコマンドでは、構成foo
の仮想サーバーbar
に対してcache-rule-images
という名前のルールが作成され、このルールでは、式$uri='^/images'
がtrueと評価されるリクエストがキャッシュされます。
props = {} props['configuration'] = 'foo' props['virtual-server'] = 'bar' props['cache-rule'] = 'cache-rule-images' props['condition'] = '$uri='^/images'' otd_createCacheRule(props)
condition
プロパティの値は、正規表現にする必要があることに注意してください。条件式の作成の詳細は、Oracle Traffic Director構成ファイル・リファレンスの変数、式および文字列の補間の使用コマンドを参照してください。
キャッシュ・ルールを変更するには、otd_setCacheRuleProperties
コマンドを実行します。
たとえば、次のコマンドでは、キャッシュ・ルールcache-rule-images
に対してコンテンツの圧縮が無効化されます。
props = {} props['configuration'] = 'foo' props['virtual-server'] = 'bar' props['cache-rule'] = 'cache-rule-images' props['compression'] = 'false' otd_setCacheRuleProperties(props)
キャッシュ・ルールを削除するには、次の例に示すように、otd_deletecacheRule
コマンドを実行します。
props = {} props['configuration'] = 'foo' props['virtual-server'] = 'bar' props['cache-rule'] = 'cache-rule-1' otd_deleteCacheRule(props)
Oracle Traffic Directorではコンテンツ・ルールを管理することにより静的なコンテンツの提供がサポートされています。動的コンテンツの提供はサポートされていません。コンテンツ・ルールはURI接頭辞に基づいて作成され、URI接頭辞はすべてのコンテンツ・ルールで一意である必要があります。Oracle Traffic Directorの管理ではコンテンツ・ルール、MIMEタイプおよびファイル・キャッシュに対してのみ静的なコンテンツの提供がサポートされています。
内容
次のトピックの説明に従い、Fusion Middleware ControlまたはWLSTのいずれかを使用して、コンテンツの提供を構成できます。
Fusion Middleware Controlを使用してコンテンツの提供を構成するには、次を実行します。
「Fusion Middleware Controlの表示」の説明に従って、Fusion Middleware Controlにログインします。
ページの左上隅にある「WebLogicドメイン」ボタンをクリックします。
「管理」→「OTD構成」を選択します。
使用可能な構成のリストが表示されます。
コンテンツの提供を構成する構成を選択します。
「共通タスク」ペインの「Traffic Director構成」をクリックします。
「管理」→「仮想サーバー」を選択します。
「仮想サーバー」ページが表示されます。
ナビゲーション・ペインで、「仮想サーバー」を展開し、コンテンツの提供を構成する仮想サーバーの名前を展開して、「コンテンツの提供」を選択します。
「コンテンツの提供」ページが表示されます。仮想サーバーに現在定義されているコンテンツの提供がリストされます。
コンテンツの提供の作成
「作成」をクリックします。
「新規コンテンツの提供」ダイアログ・ボックスが表示されます。
注意:
小文字のみ使用できます。値に大文字が含まれる場合は、通知されることなく小文字に変更されます。「URI接頭辞」フィールドに、そのコンテンツ・ルールに指定済のURIを入力します。
「ディレクトリ・パス」 フィールドに、すべての新しいコンテンツ・ルールが使用可能な指定済ディレクトリを入力します。
「OK」をクリックします。
今作成したコンテンツの提供が「コンテンツの提供」ページに表示されます。
コンテンツの提供の編集
コンテンツの提供の設定を変更するには、次を実行します。
「名前」をクリックして、コンテンツの提供の「編集」ボタンを選択します。
「コンテンツの提供の設定」ページが表示されます。
変更するパラメータを指定します。
フィールドの値を変更する、または変更したテキスト・フィールドからタブアウトすると、ページの右上隅にある「OK」ボタンが有効になります。
「取消」ボタンをクリックすることで、いつでも変更を破棄できます。
必要な変更を行った後、「OK」をクリックします。
更新された設定が保存されます。
コンテンツの提供の削除
コンテンツの提供ルールを削除するには、「削除」ボタンをクリックします。確認プロンプトで、「OK」です。
コンテンツ・ルールを作成するには、次の例に示すように、otd_createContentRule
コマンドを実行します。
props = {} props['configuration'] = 'foo' props['virtual-server'] = 'bar' props['uri-prefix'] = '/baz' props['directory-path'] = '/qux' props['content-rule'] = 'content-rule-1' otd_createContentRule(props)
仮想サーバーに定義されているコンテンツ・ルールのリストを表示するには、次の例に示すように、otd_listContentRules
コマンドを実行します。
props = {} props['configuration'] = 'foo' props['virtual-server'] = 'bar' otd_listContentRules(props)
コンテンツ・ルール・プロパティを表示するには、次の例に示すように、otd_getContentRuleProperties
コマンドを実行します。
props = {} props['configuration'] = 'foo' props['virtual-server'] = 'bar' props['content-rule'] = 'content-rule-1' otd_getContentRuleProperties(props)
コンテンツ・ルール・プロパティを設定するには、次の例に示すように、otd_setContentRuleProperties
コマンドを実行します。
props['configuration'] = 'foo' props['virtual-server'] = 'bar' props['content-rule'] = 'content-rule-1' props['index-files'] = 'home.htm' otd_setContentRuleProperties(props)
コンテンツ・ルールを削除するには、次の例に示すように、otd_deleteContentRule
コマンドを実行します。
props = {} props['configuration'] = 'foo' props['virtual-server'] = 'bar' props['content-rule'] = 'content-rule-1' otd_deleteContentRule(props)
MIMEタイプを作成するには、次の例に示すように、otd_createMimeType
コマンドを実行します。
props = {} props['configuration'] = 'foo' props['content-type'] = 'bar' props['extensions'] = 'baz' otd_createMimeType(props)
MIMEタイプのリストを表示するには、次の例に示すように、otd_listMimeTypes
コマンドを実行します。
props = {} props['configuration'] = 'foo' otd_listMimeTypes(props)
MIMEタイプを削除するには、次の例に示すように、otd_deleteMimeType
コマンドを実行します。
props = {} props['configuration'] = 'foo' props['content-type'] = 'bar' props['extensions'] = 'baz' otd_createMimeType(props)
ファイル・キャッシュ・プロパティを表示するには、次の例に示すように、otd_getFileCacheProperties
コマンドを実行します。
props = {} props['configuration'] = 'foo' otd_getFileCacheProperties(props)
ファイル・キャッシュ・プロパティを設定するには、次の例に示すように、otd_setFileCacheProperties
コマンドを実行します。
props = {} props['configuration'] = 'foo' props['max-age'] = '1200' otd_setFileCacheProperties(props)