5.3.1 J2EEアプリケーションの実行時間の監視とキャンセルの概要
J2EEアプリケーションの内部で無限ループなどが発生すると,J2EEアプリケーションの動作を制御できなくなります。このようなトラブルへの対策として,J2EEアプリケーションの実行時間にタイムアウト値を設定しておき,一定時間を過ぎたら処理が完了しなくても制御が戻るように設定する方法があります。
このような設定をするには,次の2種類の機能を使用できます。
-
メソッドタイムアウト機能
-
メソッドキャンセル機能
これらの機能では,J2EEアプリケーション内のメソッド単位にタイムアウト時間を設定して監視し,一定時間内に終了しなかったリクエストのタイムアウトを検知できます(メソッドタイムアウト機能)。また,タイムアウトが発生した場合,強制的にメソッドをキャンセルできます(メソッドキャンセル機能)。このとき,トランザクションも強制決着されます。メソッドキャンセルは,自動的に実行されるように設定できます。