Tomcat の現在のスレッド数を確認する方法

Tomcat の現在のスレッド数を確認する方法

私の Linux サーバーでは、tomcat を root として実行しており、実行するとps aux次の出力が表示されます。

root     25667  0.1 29.2 4574004 306980 ?      Sl   Apr27  33:57 /usr/local/java/bin/java -Djava.util.logging.config.file...

親プロセスしかありませんが、実行するとhtop他のすべての子プロセス (スレッドでしょうか?) が表示されます。以下に数行のサンプル出力を示します。

  PID USER      PRI  NI  VIRT   RES   SHR S CPU% MEM%   TIME+  Command                                                              
25668 root       15   0 4466M  299M 14208 S  0.0 29.3  0:01.23 /usr/local/java/bin/java -Djava.util.logging.config.file=/usr/local/t
25669 root       18   0 4466M  299M 14208 S  0.0 29.3  0:54.84 /usr/local/java/bin/java -Djava.util.logging.config.file=/usr/local/t
25670 root       15   0 4466M  299M 14208 S  0.0 29.3  0:00.25 /usr/local/java/bin/java -Djava.util.logging.config.file=/usr/local/t
25671 root       15   0 4466M  299M 14208 S  0.0 29.3  0:00.54 /usr/local/java/bin/java -Djava.util.logging.config.file=/usr/local/t
25672 root       18   0 4466M  299M 14208 S  0.0 29.3  0:00.00 /usr/local/java/bin/java -Djava.util.logging.config.file=/usr/local/t
25673 root       15   0 4466M  299M 14208 S  0.0 29.3  0:17.96 /usr/local/java/bin/java -Djava.util.logging.config.file=/usr/local/t
25674 root       15   0 4466M  299M 14208 S  0.0 29.3  0:20.01 /usr/local/java/bin/java -Djava.util.logging.config.file=/usr/local/t
25675 root       19   0 4466M  299M 14208 S  0.0 29.3  0:00.00 /usr/local/java/bin/java -Djava.util.logging.config.file=/usr/local/t

そこで、1 つのコマンドで子プロセスのリストを取得したいと思います。構成ファイルで maxThreads を 200 に設定し、子スレッドを数えて現在のスレッド数を確認したいと思います。

答え1

簡単に実行できます:ps -eLf | grep java

調整する必要があるかもしれません (探しているものを取得するために grep を改良できます)。

答え2

以下を起動できます:

ps -o nlwp PID

(PIDはプロセスのPIDになります)

nlwp = 軽量プロセスの数

答え3

JDK がインストールされている場合、これを (およびさまざまなヒープ サイズ) リアルタイムで監視する非常に便利な方法の 1 つはjconsole、GUI プログラムである を使用することです ( がある場合は、これもインストールされている必要があります)。やなどjavacのものもあります。jconsole を活用するには、JMX を有効にする必要がある場合があります (リモート接続の場合も有効にできます)。これらのツールは、検査する JVM を実行しているユーザーと同じユーザーとして実行する必要があります。jstatjinfo

topまたはを使用している場合はhtopH(大文字) と入力してスレッドの表示を切り替えることができます。さまざまな上位のキーストロークを確認する価値があります。

関連情報