4

3 台の tomcat サーバーで運用システムを実行しています。突然、Tomcat サーバーの 1 つが、プールから取り出した 100% の CPU 使用率を示しています。

この問題のデバッグを開始するにはどうすればよいですか? ツール/ユーティリティはありますか?

ありがとう、ハリッシュ

4

2 に答える 2

2

私が最初に試みることは、スレッド ダンプを取得して、何が実行されているかを確認することです。

この記事から:

Java スレッド ダンプの生成 スレッド ダンプは、SIGQUIT シグナルを JVM プロセスに送信することによって生成されます。このシグナルをプロセスに送信するには、さまざまな方法があります。

Unix では、pid が JVM のプロセス ID である「kill -3」を使用します。

Windows では、JVM が実行されているウィンドウで CTRL+BREAK を押します。

これにより、少なくともアプリケーション内のどのスレッドが実行されているかが表示され、何が起こっているかについての基本的な指標が得られます。jstackは、この情報を取得する別の手段を提供し、おそらくコンソールから切断されたサーバー プロセスにとってより簡単です。

VisualVMを使用してスレッド/CPU + メモリ使用量を報告することにより、より詳細なレポートを取得できます。

于 2012-06-19T14:54:12.357 に答える
1

JTopを見てください。これは UNIX に似てtopいますが、JVM 内のスレッド用です。

于 2012-06-20T09:22:06.697 に答える