WSIFOperation - 同期および非同期タイムアウトの解説

Web Services Invocation Framework (WSIF) を Java™ Message Service (JMS) で使用する場合、 同期操作および非同期操作に対してタイムアウトを設定できます。

これらのタイムアウトのデフォルト値は、wsif.properties ファイルで以下のように定義されています。

# maximum number of milliseconds to wait for a response to a synchronous request.
# Default value if not defined is to wait forever.
wsif.syncrequest.timeout=10000

# maximum number of seconds to wait for a response to an async request.
# if not defined or invalid defaults to no timeout
wsif.asyncrequest.timeout=60
これらのデフォルト値を使用する場合、同期要求 (WSIFOperation インターフェース executeRequestResponseOperation メソッド呼び出しなど) は 10 秒後にタイムアウトになり、非同期要求 (WSIFOperation インターフェース executeRequestResponseAsync メソッド呼び出しなど) は 60 秒後にタイムアウトになります。
注:

これらのタイムアウト値の両方を処理するコードは、 単位時間としてミリ秒を使用します。WSIFProperties クラスの getAsyncTimeout メソッドは、wsif.asyncrequest.timeout の値に 1000 を掛けて、 値を秒からミリ秒に変換します。

特定の要求に対するこれらのデフォルト値は、操作要求時に、WSDL エレメント <jms:property> および <jms:propertyValue> を指定して JMS プロパティーを設定する WSDL 拡張を作成することにより、オーバーライドできます。プロパティーの名前を WSIF プロパティー・ファイルからのタイムアウト名に設定します。

以下の例では、同期要求が 2 分 (120 秒) 後にタイムアウトになるように設定されています。
<jms:propertyValue name="wsif.syncrequest.timeout" type="xsd:string" value="120000"/>
そして、 次の例は非同期タイムアウトを使用不可にします (ゼロの値は永久に待機することを意味します)。
<jms:propertyValue name="wsif.asyncrequest.timeout" type="xsd:string" value="0"/>

非同期タイムアウトの有効期限が切れると、 応答を待っているリスナーやメッセージ・データベースが通知を受けられなくなります。 非同期タイムアウトは、保管された WSIFOperation が削除可能であることを、相関サービスに知らせる場合にのみ使用されます。相関サービスについて詳しくは、WSIFOperation - 非同期対話の解説を参照してください。


トピックのタイプを示すアイコン 参照トピック



タイム・スタンプ・アイコン 最終更新: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=rwsf_synctimeouts
ファイル名:rwsf_synctimeouts.html