3

CPU が 100% に達すると、次のエラー メッセージが表示されて jvm が自動的に再起動します。

エラー:

ERROR | wrapper | 2012/04/05 20:00:31 | Shutdown failed: Timed out waiting for signal from JVM.
ERROR | wrapper | 2012/04/05 20:00:31 | JVM did not exit on request, terminated
STATUS | wrapper | 2012/04/05 20:00:36 | Launching a JVM...
INFO | jvm 4 | 2012/04/05 20:00:38 | WrapperManager: Initializing...
INFO | jvm 4 | 2012/04/05 20:00:43 | Apr 5, 2012 8:00:43 PM org.apache.coyote.http11.Http11BaseProtocol init
    INFO | jvm 4 | 2012/04/05 20:00:43 | INFO: Initializing Coyote HTTP/1.1 on http-8181
    INFO | jvm 4 | 2012/04/05 20:00:43 | Apr 5, 2012 8:00:43 PM org.apache.catalina.startup.Catalina load
    INFO | jvm 4 | 2012/04/05 20:00:43 | INFO: Initialization processed in 2375 ms
    INFO | jvm 4 | 2012/04/05 20:00:43 | Apr 5, 2012 8:00:43 PM org.apache.catalina.core.StandardService start
    INFO | jvm 4 | 2012/04/05 20:00:43 | INFO: Starting service Catalina
    INFO | jvm 4 | 2012/04/05 20:00:43 | Apr 5, 2012 8:00:43 PM org.apache.catalina.core.StandardEngine start
    INFO | jvm 4 | 2012/04/05 20:00:43 | INFO: Starting Servlet Engine: Apache Tomcat/5.5.25
    INFO | jvm 4 | 2012/04/05 20:00:44 | Apr 5, 2012 8:00:44 PM org.apache.catalina.core.StandardHost start
4

2 に答える 2

2

これは再起動中の JVM ではありません。使用しているラッパー スクリプトがシャットダウンされ、再び開始されます。このように構成されています。アプリケーションの CPU 使用率が高いようです。ヒープ ダンプと GC ログの両方を調べて、ガベージ コレクターに関連しているかどうかを確認してみてください。

于 2012-04-06T07:07:16.040 に答える
0

コメントに基づいて、Tomcat のメモリ構成を指定しませんでした。私の推測では、Tomcat はすべてのリクエストを実行するために必要なメモリを使用していると思われます。また、前に説明したように、Tomcat は、CPU が 100% に達する前に、使用可能な最大メモリを消費すると PermgenSpace エラーをスローする必要があります。(その後、もちろん手動で再起動する必要があります。) tomcat server に定義済みのメモリ構成を設定すると、このシナリオを回避できます。

また、アプリケーションをロードしている場合は、Tomcat がコンテキストを自動的にリロードしないように<Context>指定することもできます。reloadable="false"

于 2012-04-06T07:05:03.743 に答える