サン・マイクロシステムズのVisualVMツール(リンク)と統合したTerracottaは(リンク)、Javaアプリケーションの振る舞いを深く知ることができるクラスタワイドの可視化とJVMイベントコリレーションの機能を提供する。先日、TerracottaはVisualVM技術との統合を発表した(リンク)。この統合により開発者やウェブアドミニストレータは可視化と分析の機能を利用し、Terracottaマネジメントコンソールを用いてJavaアプリケーションのチューニングとトラブルシューティングができるようになった。
「VisualVMとTerracottaは自然に適合しています。VisualVMが仮想マシンの詳細な分析を提供し、Terracottaがクロスクラスタに関する重要な情報を提供します」とTerracottaのCTO、かつ、共同創立者であるAri Zilka氏が語った。Ari氏は、JavaOne 2008カンファレンスで(リンク)Terracottaがサポートしている可視化についてプレゼンテーションを(リンク)行った。負荷が複数のJVMにわたって拡張されているJavaクラスタアプリケーションを最適化するものを、この可視化によってどのように開発者が見ることができるかについて彼は話した。
Terracottaは、4月のバージョン2.6の製品(リンク)リリースで、クラスタワイドのモニタリングと可視化モジュールを追加した。Javaヒープ、システムCPU、スレッドダンプ、Terracottaの待ち行列の長さ、そしてトランザクションのようなランタイムの統計を提供することで、可視化モジュールはJavaアプリケーションのチューニングと可視化の役に立っている。Terracottaサーバの操作に関するこれらの統計はJMX(リンク)やREST(リンク)によって示される。
VisualVMはグラフィカルなツールで、開発者は複数のJavaソフトウェアアプリケーションのデバッグ情報を取得できる。それは、ローカルで実行していても、リモートマシンで実行していても同様である。そのデバッグ情報は、アプリケーションのスレッドのモニタリングやコアダンプ、スナップショット、ヒープダンプなどの分析に使われる。JConsoleプラグインで(リンク)、VisualVMはJMX Agentに接続し、JavaアプリケーションのMBeansの詳細を見るために使われる。このツールは、アプリケーションのプロファイリング(リンク)でも利用できる。
VisualVMは、現在、Java Platform Standard Edition (Java SE) Version 6 Update 7に含まれている(リンク)。
InfoQは、Jeff Hartley氏に話を聞いた。彼は、VisualVMとTerracottaの統合、またTerracotta可視化モジュールの将来のロードマップに関するマーケティング製品部長である。InfoQは、Javaアプリケーションのビルド、テスト、チューニングの分野で、Java開発者にとって新しい統合が何を意味するのかを尋ねた。
TerracottaとSunは、1つの共通の目的を持ってVisualVMプラグインを協力して開発しました。その目的とは、開発者やオペレータにアプリケーションの可視化とコントロールを拡張する1つの起点となるものを提供することでした。これにより開発者は深くて広いクラスタ操作の中を見ることができます。ここでいう深いとは、SunのVisualVMで個々のJVMの中を見られることであり、広いとは、クラスタの中のJVM間でどのようにデータを交換するかについての情報をTerracottaが提供できることです。
TerracottaとVisualVMの結合がJVMイベントコリレーションで使えることについてJeff氏が語った。
Terracotta VisualVMプラグインによって、メモリ、CPU使用率、トランザクション速度を含むさまざまな統計をクラスタワイドで見ることができます。例えば、ある特定のマシンのトランザクション速度が遅くなる場合に、リソース不足や何か他のイベントを引き起こしているローカルのガベージコレクションサイクルのようなものによって問題が起こっているかどうか、開発者やオペレータは他の統計を分析できます。
Terracotta VisualVMプラグインが、クロスクラスタのモニタリングやトラブルシューティングのために、どのような種類の情報や統計を提供するのか詳細を教えてください。
クラスタの中の各マシンに関する多数のリアルタイム統計をまとめて見られるオペレータコンソールがあります。そこには、メモリ、CPU、トランザクション速度、キャッシュヒット率、オブジェクトフラッシュ率やオブジェクト不良率などが含まれます。また、環境データや設定データなどの各ノードについてメタ情報にアクセスすることもできます。この機能は、私たちのコアな製品の中で提供する統計を補足するものです。私たちが提供している統計には、Terracottaの内部パイプライン統計すべてや、ホットロック、ロックノードホッピング、オブジェクトスワッピングやチャーン(攪拌)に関連するデバッグ性能を向上させるクラスタロックプロファイラがあります。また、アプリケーションコードの中にある並行処理のバグを発見するクラスタワイドデッドロックディテクターも計画しています。
TerracottaとSunの関係の将来の方向性に関して、彼は言った。
現在、私たちは2、3の方法でSunと協力しています。大体、技術的な協力で、VisualVMに関することとGlassfishの(リンク)アプリケーションサーバのサポートを提供することの両方があります。そのため、Glassfishユーザーは、Tomcat(リンク)、Jetty(リンク)、WebLogicな(リンク)どを使っている人と同じくらい簡単にTerracottaでアプリケーションをクラスタ化できます。もちろんHotSpot JVMもサポートしています。
TerracottaのSnapshot Visualization Tool (SVT)で、開発者はスナップショットを記録し、CPU、メモリ使用、ディスクアクティビティ、Terracotta統計 (SEDA Queue Depths、L1 L2 Fault Flushなど) のような統計を見ることができる。SVTは、Terracottaウェブサイトでダウンロード可能である(リンク)。(ダウンロードにはユーザー登録が必要)
原文はこちらです:http://www.infoq.com/news/2008/07/terracotta-visualvm