Takayuki Okazaki's Weblog
ブログ: 岡崎 - Okazaki's blog
20050428 2005年 4月 28日 木曜日
Java Computing2005より: Java Studio Enterprise 7のエンタープライズ・プロファイラのデモ手順
English Translation: (Yahoo!) / (Google)
だいぶ前になりますがJava Computing 2005藤井さん、西ヶ谷さんと一緒にJava Studio Enterprise 7 2004Q4のデモを行いました。その際にご紹介したエンタープライズ・プロファイラの設定手順と使い方をご紹介します。 プロファイリング対象のアプリケーションはJava Computing 2005でご紹介した通りPetStoreを使用することにします。

準備

Sun Java Studio Enterprise 7 2004Q4のインストール

まず、Sun Java Studio Enterprise 7 2004Q4を入手します。90日の無償体験版も 次の場所から入手することができます。 http://jp.sun.com/products/software/tools/jsenterprise/download.html
インストール手順はインストールガイドに 詳しくかかれています。インストーラを起動する前に必要な作業としてドメイン名の設定が必要ですので、 インストールガイドをみなくてもわかると思われる方もチェックしておいてください。

プロジェクトの作成

プロジェクトマネージャから新規のプロジェクトを作成します。今回は 「プロファイラを試す」という名前のプロジェクトを作成することにします。
(クリックで拡大)

サーバの設定

次に、アプリケーションサーバの設定を行います。まずは、アプリケーションサーバの 管理サーバを起動します。
(クリックで拡大)
管理サーバが起動したら、次にアプリケーションサーバを起動します。メニューの「状態」から 「サーバを起動」を選びます。
(クリックで拡大)
(クリックで拡大)
次に、デフォルトサーバを設定します。アプリケーションサーバと、Webサーバに それぞれ先ほど起動したアプリケーションサーバ(ここでは server1)を設定します。 (クリックで拡大)
(クリックで拡大)
(クリックで拡大)
次にPointBaseを起動します。
(クリックで拡大)

PetStoreデモプログラムの準備

PetStoreデモプログラムはJ2EEブループリントのアプリケーションとして有名なアプリケーションで、 J2EEの機能を広く使用しておりプロファイラの機能を確認するためには大変便利です。 事前準備はかなりの項目がありますが、antを使用すればほとんどの設定を自動的に行うことができます。 デフォルトインストールの場合、Windowsでは C:\Sun\jstudio_04q4\AppServer7\samples\petstore1.3_01\src から asantを起動します。Solarisでは /opt/SUNWjstudio04q4/AppServer7/samples/petstore1.3_01/src から起動してください。
(クリックで拡大)
途中で管理サーバのパスワードを求められますのでSun Java Studioインストール時に設定したパスワードを 入力してください。
(クリックで拡大)

プロファイラの準備

プロファイラを利用する前に、アプリケーションとアプリケーションサーバの両方に プロファイラフィルタを有効にする作業を行います。 次のようにアプリケーションサーバを選択して、「エンタープライズプロファイラを有効化」を選びます。
(クリックで拡大)
プロファイラの設定を適用するためにはアプリケーションサーバを再起動する必要が ありますので、アプリケーションサーバを再起動します。
(クリックで拡大)
次に、アプリケーションの設定を行います。まず、プロジェクトのディレクトリとして PetStoreのディレクトリをマウントします。デフォルトインストールでは、Windowsの場合 C:\Sun\jstudio_04q4\AppServer7\samples\petstore1.3_01、Solarisの場合は /opt/SUNWjstudio04q4/AppServer7/samples/petstore1.3_01をマウントします。
(クリックで拡大)
マウントが完了したらpetstore.earをデプロイします。右クリックメニューの「配置」を 選択します。
(クリックで拡大)
アプリケーションプロファイラはWEB-INFに対して有効化する必要があります。このため、 PetStoreの場合はデプロイ済みのWEB-INFをマウントして有効化する操作を行います。 まず、デプロイ済みのアプリケーションディレクトリをマウントします。デフォルトインストールの 場合、Windowsでは C:\Sun\jstudio_04q4\AppServer7\domains\domain1\server1\applications\j2ee-apps 以下に petstore_1などのように展開されます。Solarisでは /var/opt/SUNWappserver7/domains/domain1/server1/applications/j2ee-appsに展開されます。
(クリックで拡大)
ここに展開されているpetstore_warをマウントします。
(クリックで拡大)
マウントができたら、WEB-INFに対して右クリックメニューから「ツール」→「プロファイラフィルタ」→「有効」を選択します。
(クリックで拡大)
プロファイラフィルタの設定を変更した場合はアプリケーションの再デプロイが必要になります。 PetStoreの場合、もう一度配置してしまうと別のイメージが作成されてしまいますので、再配置ではなく アプリケーションサーバの再起動によって有効化します。
(クリックで拡大)
お疲れ様でした。ここまでで準備は終了です。

プロファイラを使ってみる

プロファイラを使用するにはメニューの「ウインドウ」から「エンタープライズプロファイラ」を 選択します。
(クリックで拡大)

予定表の作成

プロファイラを使用する際には負荷生成ツールとの組み合わせで使うのが便利です。 負荷生成のために予定表を作成します。ここまでの準備が正しく行えている場合、 デプロイしたアプリケーションを使うだけで自動的に負荷生成のための情報が作成されます。
ではデプロイしたPetStoreを使ってみましょう。 画面中央の左側の「enter the store」を選びます。
(クリックで拡大)
いろいろクリックしてみましょう。
(クリックで拡大)
(クリックで拡大)
これでレコードがSun Java Studioに取り込まれています。また、同時にここまでの 操作に関するプロファイリングデータも収集されています。
(クリックで拡大)
予定表を作成するには現在のレコードを右クリックして「予定表を作成」を選びます。
(クリックで拡大)
このように予定表が作成されます。
(クリックで拡大)

メソッドごとの実行時間を見る

プロファイラにはいろいろな機能がありますがここではメソッドごとの実行時間を計測してみます。 画面下のメソッドのタブをクリックします。次に、対象とするメソッドを選択します。
(クリックで拡大)
ここではすべてを選択します。
(クリックで拡大)
次に負荷生成を開始します。
(クリックで拡大)
メソッドとレースを取得をクリックするとメソッドのプロファイリングデータを取得することができます。
(クリックで拡大)
次のように呼び出し順序や、その実行時間を計ることができます。
(クリックで拡大)
呼び出しスタックをグラフィカルに表示する機能もあります。
(クリックで拡大)

使用メモリを見る

メモリタブを選択すると、アプリケーションサーバの現在使用しているメモリ量が 時間の経過と共に表示されます。
(クリックで拡大) いかがでしょうか、PetStoreを使ったためすこし導入手順が複雑でしたがこの プロファイラ機能はパフォーマンスチューニングなどで絶大な力を発揮してくれるはずです。 ぜひともお試しください。


過去の記事
« 4月 2005 »
     
1
2
3
4
5
6
7
8
10
12
13
14
15
16
17
19
20
21
22
23
24
25
26
27
29
30
       
今日
Click me to subscribe このブログを購読(RSS)
検索

このブログ著者について
ソフトウエア・インフラストラクチャー・ソリューション本部のソリューション・アーキテクトでした(2008年8月退職)。 本業はSOAソリューションならびにSun Java CAPSによるソリューションのプリセールスをお手伝いするエンジニア、とJavaエバンジェリストグループに参加してセミナーに行ったり、趣味のプログラミング・ネタをこのブログで紹介したりしていました。現在は、ふらふらとwatermint.orgで活動中〜。
リンク
 
SunホットトピックPodcast - SunホットトピックPodcast
 


 

Today's Page Hits: 360