ヘッダーをスキップ
Oracle® Fusion Middleware Oracle WebLogic Server JAX-WS Webサービスの高度な機能のプログラミング
11g リリース1 (10.3.6)
B61633-05
  目次へ移動
目次

前
 
次
 

8 Webサービスのメッセージ・バッファリングの構成

この章では、Java API for XML Web Services (JAX-WS)を使用したWebLogic Webサービスのメッセージ・バッファリングを構成する方法について説明します。

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

メッセージ・バッファリングの概要

バッファリングされたWebサービス上の操作が呼び出されると、その呼出しを表すメッセージがJMSキューに格納されます。WebLogic Serverは、このバッファリングされたメッセージを非同期に処理します。メッセージがまだキュー内にある間にWebLogic Serverがダウンした場合、WebLogic Serverが再起動するとすぐに処理されます。

WebLogic Serverは、あらかじめ構成されて管理されたスレッドのプールから取得した別のスレッドで、リクエスト・メッセージを処理します。これにより、WebLogic Serverはクライアントの負荷のスパイクを緩和し、リクエストの時間順の処理を続けることができます。メッセージ・バッファリングは、サービス拒否攻撃とサーバーでの一般的な過負荷状態を防ぐための強力なツールです。

Webサービスにメッセージ・バッファリングを構成するかどうかを判断するための参考に、「バッファなしの信頼性のあるWebサービスでの障害シナリオ」を確認することをお薦めします。

メッセージ・バッファリングの構成

WebLogic ServerまたはWebサービス・エンドポイントのレベルで、Webサービスにメッセージ・バッファリングを構成できます。サーバー・レベルで構成されたメッセージ・バッファリングでは、Webサービス・エンドポイント・レベルで明示的にオーバーライドされない限り、そのサーバー上で実行するすべてのWebサービスとクライアントに対するデフォルトのメッセージ・バッファリングが定義されます。

WebLogic Server管理コンソールを使用してWebLogic ServerまたはWebサービス・エンドポイントのレベルでWebサービスに対するメッセージ・バッファリングを構成する詳細な手順は、Oracle WebLogic Server管理コンソール・ヘルプWebサービスに対するメッセージ・バッファリングの構成に関する項を参照してください。

Webサービス・エンドポイント・レベルでメッセージ・バッファリングを構成するときは、「バッファリング構成のカスタマイズ」を選択し、Webサービス記述子またはデプロイメント・プランで定義されているバッファリング構成をWebサービス・エンドポイント・レベルでカスタマイズすることを指定します。これを選択しないと、WebLogic Serverレベルで指定されているバッファリング構成が使用されます。

または、WLSTを使用して、メッセージ・バッファリングを構成することもできます。WLSTを使用したドメインの拡張の詳細は、『Oracle WebLogic Scripting Tool』の既存ドメインの構成に関する項を参照してください。

次の項では、メッセージ・バッファリングの構成プロパティについて説明します。

リクエスト・キューの構成

次の表では、リクエスト・キューの構成に使用するプロパティを説明します。

表8-1 リクエスト・キューの構成

プロパティ 説明

リクエスト・キューの有効化

リクエスト・キューが有効かどうかを指定するフラグ。デフォルトでは、リクエスト・キューは無効です。リクエスト・キューの名前は、そのレベルで有効な論理ストアによって定義されます。

WebLogic Server永続ストアを論理ストアの物理ストアとして使用すると、リクエスト・バッファリング・キューとレスポンス・バッファリング・キューの名前はバッファリングの構成ではなく論理ストアの構成から取得されます。

リクエスト・キューの接続ファクトリのJNDI名

リクエスト・メッセージ・バッファリングに使用する接続ファクトリのJNDI名。この値のデフォルトは、サーバーで定義されているデフォルトのJMS接続ファクトリです。

リクエスト・キュー・トランザクションの有効化

リクエスト・バッファリング・キューのメッセージを格納および取得するときにトランザクションを使用するかどうかを指定するフラグ。デフォルトはfalseです。


レスポンス・キューの構成

次の表では、レスポンス・キューの構成に使用するプロパティを説明します。

表8-2 レスポンス・キューの構成

プロパティ 説明

レスポンス・キューの有効化

レスポンス・キューが有効かどうかを指定するフラグ。デフォルトでは、レスポンス・キューは無効です。レスポンス・キューの名前は、そのレベルで有効な論理ストアによって定義されます。

WebLogic Server永続ストアを論理ストアの物理ストアとして使用すると、リクエスト・バッファリング・キューとレスポンス・バッファリング・キューの名前はバッファリングの構成ではなく論理ストアの構成から取得されます。

レスポンス・キューの接続ファクトリのJNDI名

レスポンス・メッセージ・バッファリングに使用する接続ファクトリのJNDI名。この値のデフォルトは、サーバーで定義されているデフォルトのJMS接続ファクトリです。

レスポンス・キュー・トランザクションの有効化

レスポンス・バッファリング・キューのメッセージを格納および取得するときにトランザクションを使用するかどうかを指定するフラグ。デフォルトはfalseです。


メッセージの再試行回数と遅延の構成

次の表では、メッセージの再試行回数と遅延の構成に使用するプロパティを説明します。

表8-3 メッセージの再試行回数と遅延の構成

プロパティ 説明

再試行回数

呼び出されたWebLogic ServerインスタンスのJMSキューが、操作が正常に呼び出されるまでWebサービスの実装にメッセージの配信を試みる回数。デフォルト値は3です。

再試行の遅延

バッファリングされたリクエストとレスポンスの再試行の間隔。この値は、「再試行回数」が0より大きいときにのみ適用されます。

指定する値はXMLスキーマの期間を表す字句形式(PnYnMnDTnHnMnS)に従った正の値でなければなりません。ここで、nYは年数、nMは月数、nDは日数を表し、Tは日付/時刻のセパレータ、nHは時間数、nMは分数、nSは秒数を表します。この値のデフォルトはP0DT30S (30秒)です。