(特集)不滅のJava 1

プロファイラとは

サーバアプリケーションの動作を可視化本連載では、オープンソースを使ったサーバサイドのプロファイル方法について、3回に渡り解説を行います。主に、JavaのWebアプリケーションを作成している開発者の方が対象となります。

edit

2007年8月29日 20:00

サーバアプリケーションの動作を可視化

本連載では、オープンソースを使ったサーバサイドのプロファイル方法について、3回に渡り解説を行います。主に、JavaのWebアプリケーションを作成している開発者の方が対象となります。

第1回となる今回は「プロファイラとは」というタイトルで、プロファイラとは何か、どんなことができるのかを説明した上で、プロファイル環境と対象 となるサンプルアプリケーションのインストールまで進めていきます。紙面の都合上、実際にプロファイラを動作させるのは次回以降になりますので、ご了承く ださい。

プロファイラとは

プロファイラとは、アプリケーションの性能を解析するためのツールです。Webアプリケーション開発を進めていく上で、次のような問題に遭遇したことはないでしょうか。


  • 極端に遅いリクエスト処理があるのだが、原因がわからない
  • サーバを起動してしばらく経つと、アプリケーションの動作が重くなる
  • Out Of Memoryエラーが発生する
  • リクエストの多重度を増やすと、スループットが低下する
表1:Webアプリケーション開発時の問題

プロファイラはこういった問題を解決するのに非常に役立ちます。

プロファイラで取得できること

プロファイラを利用すると、一般的には以下のような指標が取得できます。


  • メソッドの呼び出し回数
  • メソッドの呼び出し時間
  • メモリ使用量
  • CPU使用量
  • スレッドの状態
表2:プロファイラで取得できる指標

取得した情報により、処理時間がかかっているアプリケーションロジックやメモリの不正利用、スレッドの待ち状態がわかり、アプリケーションの問題を解決するのに役立ちます。

プロファイラによっては、このような指標をグラフィカルに表示することができます。
 

この記事をシェアしてください

人気記事トップ10

人気記事ランキングをもっと見る