WebSphere Application Server for z/OS が使用するタイマーは、このトピックの後半で説明する幾つかの汎用タイプに分類できます。
個々のタイマーについては、
タイムアウト値を介した制御動作で説明しています。
ほとんどのタイマーにはデフォルト値があり、特定の操作が完了するまでの妥当な時間を定義しています。
タイマーがポップすると (すなわち制限時間に達すると)、WebSphere Application Server for z/OS は以下のいずれかのアクションを取ります。
- クライアント要求がサーバント領域にディスパッチされる前にタイマーがポップする場合は、
クライアントにマイナー・コードを送信します。
- クライアント要求が、サーバント領域で実行されるアプリケーション・コンポーネントで処理されている間にタイマーがポップする場合は、EC3 ABEND が発生してサーバント領域が異常終了します。
異常終了したサーバント領域のスレッドはすべて終了します。
WebSphere はサーバント領域を強制終了することによって、アプリケーションがリソースを拘束し、他の要求によりバックアップが開始されるのを防ぎます。
サーバントが終了したら、WLM はその代わりとなる新規サーバントを開始して、
コントローラーからの要求の処理を継続します。
注: トランザクション合計存続時間タイムアウトと
最大トランザクション・タイムアウト値には、ABEND が発生する前に達する
必要のある、約 4 分間に指定されたタイムアウト値より大きい猶予期間があ
ります。
タイマーの種類が異なっても、それらが制御する操作はある程度オーバーラップしているため、
同時にカウントダウンが行われる場合があります。
例えば、アプリケーション・サーバーが受け取った IIOP クライアント要求が、
トランザクション・サポートを使用するアプリケーション・コンポーネントによって処理されるとします。
この場合、以下の WebSphere タイマーは両方とも同時にカウントダウンを行うことになります。
- control_region_wlm_dispatch_timeout。クライアント要求が WLM キューで待機する時間と、
アプリケーション・コンポーネントがその要求を処理するのに必要な時間の両方を制限します。
- transaction_defaultTimeout。コントローラーが、
トランザクションのコミットまたはロールバックを待機する時間を制限します。
この 2 つのタイマーがオーバーラップするのは、
アプリケーションのトランザクションが処理されている間に限られます。
どちらのタイマーがエラーの原因となっているかを判別するには、
その症状に固有のマイナー・コード、または EC3 ABEND 理由コードを使用してください。