読者です 読者をやめる 読者になる 読者になる

Challenge Java EE !

Java EEを中心に趣味や仕事における開発メモを書いています。

Visual VMとLightFishを初めて触ってみました!

GlassFish NetBeans JavaOne VisualVM LightFish

休日だった今日は、前にJavaOne2012報告会で聞いた「JavaOneセッションの動画は(期間限定で?)ネットでみれますよ」というのを思い出し、以下JavaOneのサイトから自分に必要そうな情報を探してました。

JavaOne2012のセッション一覧

一覧が512件もあって恐ろしいほどの情報量…。とりあえず自分は、Java EE関連を中心に気になったものをみてました。で、そのうちの1つ

Adam Bienさんの「Stress-Testing Java EE 6 Applications Without Stress」

というセッションの動画&デモをみていて、以下2つのツールを知りました…今更(^^;

どちらもモニタリングツールですが、これらはバグ発生時や出荷前の負荷試験、性能検証で利用したい!と思いました。

VisualVM

VisualVMは利用される方が多いのか、国内情報も多い気がします。

後者の記事は絶対読み込まねば!!!

というわけで、このブログで色々触れるのは置いておいて(^^;
セッションの動画でみたVisualVMのプラグイン「Visual GC」を入れてみたので、その流れだけ書きます。

1.VisualVMを起動した画面です

f:id:kikutaro777:20130212003529j:plain

2.「ツール」->「プラグイン」を選択します

普段NetBeans使ってる自分には馴染みのある画面が(^^)
VisualGCにチェックを入れて左下のインストールボタンを押します。

f:id:kikutaro777:20130212003555j:plain

3.インストール

f:id:kikutaro777:20130212003651j:plain
f:id:kikutaro777:20130212003715j:plain
f:id:kikutaro777:20130212003726j:plain

インストール完了です。

4.Visual GCタブが増えてます

f:id:kikutaro777:20130212003751j:plain

中身の見方は…これから勉強します(^^;まだJVM辺りは詳しく知らないので…。

LightFish

GlassFishサーバのモニタリングをしてくれるツールで、セッション発表者のAdam Bienさんご自身が開発されているのですね(^^)以下が本家のサイトです。

Java EE Telemetry

telemetryって単語を知らなかったのですが、遠隔測定、という意味なんですね。なるほど。

そして国内にも紹介記事があって、どういうものか把握しやすかったです。

GlassFishの監視ツール、LightFishを使ってみる

本家サイトと同じくasadminのコマンドから起動する流れで紹介されています。
自分も同じ流れで確認した後、NetBeansからも使ってみましたので、その流れをまとめます。

実行環境

起動までは非常にシンプルです。

1.LightFishのwarをダウンロードします

Java EE Telemetry

上記サイトの下のほうに「Download stable: lightfish.war」とDLリンクがあります。

2.NetBeansから自分で作った何らかのWebアプリケーションを起動します

このときJava DB(Apache Derby)の起動も確認しておきます。
LightFishは自動的にJava DBへDBを作るようです。

3.localhost:4848でGlassFishの管理画面を起動してアプリケーションメニューへ

f:id:kikutaro777:20130212004058j:plain

4.デプロイボタンを押下して、ダウンロードしたlightfish.warを選びます

f:id:kikutaro777:20130212004146j:plain

5.デプロイ成功

f:id:kikutaro777:20130212004208j:plain

6.localhost:8080/lightfish/へアクセスします

以下画面が起動します。

f:id:kikutaro777:20130212004249j:plain

7.MonitoringをActivateして、TimerのStartを押します

左下に「LightView JavaFX or HTML5」とあるので、とりあえずここではJava FXを選択します。
ブラウザからプラグインの警告が出ますが、ここでは許可してあげると、再度以下のような警告がでます。(この辺りって先日のセキュリティアップ関連なのかなぁ…)

f:id:kikutaro777:20130212005506j:plain

許可して実行します。すると

f:id:kikutaro777:20130212005302j:plain

おー、なんかグラフが出た(^^)

左したにある「Launch and install LightView」のリンクを叩くと再度以下の警告が出ます。

f:id:kikutaro777:20130212004545j:plain

これを実行すると、Javaのアプリとして実行されてウィンドウが出てきました。

f:id:kikutaro777:20130212005607j:plain

Transactionタブがあったので、DBとやりとりするWebアプリケーションを試したり、わざと失敗させたら

f:id:kikutaro777:20130212005745j:plain

横ばいだったのがこんな感じに。コミットやロールバックが監視できるっぽい。

まとめ

JavaOneの1つのセッション動画みただけで、知らなかった情報に色々触れました;

Javaの世界って、こういうツールが豊富に溢れていて、しかも自由に使えるのがほんと楽しいです。
ただ、意識的にこうした情報へたどり着くのはなかなか難しかったりもして、こういうツールも去年プロトタイプ作ってたとき知りたかったなぁ、なぜ当時辿りつかなかったんだろうなぁ、とか思ったり。

いずれにせよ、この2つはとても有益そうなので、今後も触っていきたいと思います。

にほんブログ村 IT技術ブログへ
にほんブログ村
にほんブログ村 IT技術ブログ Javaへ
にほんブログ村