「うわっ…私のアプリ、遅すぎ…?」 スレッドダンプでJavaアプリケーションのボトルネックを調査しよう こんにちは、寺岡です。 今回は、アプリケーションのトラブルを調査する際に役立つスレッドダンプについて書いてみたいと思います。 スレッドダンプって何? スレッドダンプとは、ある時点の全てのスレッドのスタックトレースを出力したものです。 スタックトレースとは現在のスレッドのメソッドの呼び出し階層を出力したもので、例外が発生した時なんかによく見かけるアレのことです。 javaプロセス内部では複数のスレッドが並列に処理を行っています。 Tomcatなどのサーブレットは複数のスレッドを使ってリクエストを処理しますし、シングルスレッドのシンプルなアプリケーションでもGCなどの処理は専用のスレッドが処理を行っています。 スレッドダンプを取得するとは、プロセス内の全スレッドに対して「ちょっとお前ら、今何