WebLogic管理対象サーバーにおける、強制停止のタイムアウト時間の設定方法
(Doc ID 1934368.1)
Last updated on OCTOBER 29, 2020
適用範囲:
Oracle WebLogic Server - バージョン 10.3 以降この文書の内容はすべてのプラットフォームに適用されます。
目的
強制停止の操作により、WebLogic Serverは実行中のプロセスを無視して直ちにシャットダウンされます。全てのサーバーのサービスは停止されます。コネクションプールのような外部リソースとファイルストアはクローズされます。
通常、強制停止は迅速に行われ、ブロックはされません。しかし、WebLogicは強制停止の際に、Sevletの中のdestroy()や
アプリケーションコードを呼び出します。アプリケーションは強制停止の際、JMS、JDBC、トランザクションサービスにアクセスする必要が出てくる場合もあるため、Weblogicは最初にアプリケーションをシャットダウンし、次にJMS、JDBC、トランザクションを停止させます。このように、強制停止はアプリケーションのプロセスにより遅延することがあります。また、強制停止はServerLifecycleExceptionの例外をスローし、失敗する可能性もあります。強制停止の失敗後、サーバーはejbRemove()
のようなServerLifecycleTimeoutVal
で定められる秒数ののち、exitを行います。
Weblogicを開発モードで動作させているとき、強制停止の操作は、デフォルトではタイムアウトの前に30秒間待ちます。同様に、WebLogicを本番モードで動作させているとき、デフォルトではタイムアウトの前に120秒間待ちます。本番モードではより長いデフォルトのタイムアウトが設けられており、アプリケーションのexitにより多くの時間をかけられます。タイムアウトを0に設定すると、サーバーは強制停止の完了を永遠に待ち続けることになります。
強制停止がタイムアウトしたとき、WebLogicは強制的に、現在実行中のJava仮想マシンを終了させます。デフォルト値のServerLifecycleTimeoutVal
はほとんどのアプリケーションにとっては十分な長さではありますが、アプリケーションの処理のために、Weblogicが強制停止を待つ時間を増加させる必要が出てくる可能性もあります。
解決策
To view full details, sign in with your My Oracle Support account. |
|
Don't have a My Oracle Support account? Click to get started! |
本書の内容
目的 |
解決策 |