TOP
>
システム開発
> サーバアプリケーションの動作を可視化
Javaサーバサイドプロファイリング
第1回:プロファイラとは
著者:
野村総合研究所 松野 洋希
2007/8/29
1
2
3
次のページ
サーバアプリケーションの動作を可視化
本連載では、オープンソースを使ったサーバサイドのプロファイル方法について、3回に渡り解説を行います。主に、JavaのWebアプリケーションを作成している開発者の方が対象となります。
第1回となる今回は「プロファイラとは」というタイトルで、プロファイラとは何か、どんなことができるのかを説明した上で、プロファイル環境と対象となるサンプルアプリケーションのインストールまで進めていきます。紙面の都合上、実際にプロファイラを動作させるのは次回以降になりますので、ご了承ください。
プロファイラとは
プロファイラとは、アプリケーションの性能を解析するためのツールです。Webアプリケーション開発を進めていく上で、次のような問題に遭遇したことはないでしょうか。
極端に遅いリクエスト処理があるのだが、原因がわからない
サーバを起動してしばらく経つと、アプリケーションの動作が重くなる
Out Of Memoryエラーが発生する
リクエストの多重度を増やすと、スループットが低下する
表1:Webアプリケーション開発時の問題
プロファイラはこういった問題を解決するのに非常に役立ちます。
プロファイラで取得できること
プロファイラを利用すると、一般的には以下のような指標が取得できます。
メソッドの呼び出し回数
メソッドの呼び出し時間
メモリ使用量
CPU使用量
スレッドの状態
表2:プロファイラで取得できる指標
取得した情報により、処理時間がかかっているアプリケーションロジックやメモリの不正利用、スレッドの待ち状態がわかり、アプリケーションの問題を解決するのに役立ちます。
プロファイラによっては、このような指標をグラフィカルに表示することができます。
1
2
3
次のページ
著者プロフィール
株式会社野村総合研究所 松野 洋希
情報技術本部 オープンソースソリューションセンター
大規模コンシューマ向けWebサイトのインフラ構築にあたり、オープンソースのフレームワークやミドルウェアの検証・評価に携わる。2003年、日本人としては初めてJBoss社の認定コンサルタントに合格。現在は、金融系システム基盤へオープンソースソフトウェアを適用するために設計・構築を行っている。
NRIオープンソースサポートサービス OpenStandia
http://www.nri-aitd.com/openstandia/
INDEX
第1回:プロファイラとは
サーバアプリケーションの動作を可視化
Javaサーバサイドアプリケーションで利用可能なプロファイラ
サンプルアプリケーションのインストール