トップスポーツチームの監督に教わる秘訣
この論文では、氏が発見した原則を要約し、その原則をいかにしてソフトウェア開発に応用するかを説明します。
作者 Srini Penchikala, 翻訳者 大田 緑 - (株)チェンジビジョン 投稿日 2008年7月30日 午後12時3分
サン・マイクロシステムズの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
InfoQ Japanはコンポーネントスクエアが運営しています
ITマネージャ必聴!IT活用セミナー 勝ち残りの法則~管理・統合化スペシャル~
12/5 CSQ会員限定技術情報交換会にてJCP議長が標準化について語る
この記事では、私達がどのようにして大規模(240人月、10万行強)でインドとオランダの開発者も参加したスクラム・プロジェクトを成功させたのかを示しています。
Agileカンファレンスに「参加者としてだけでなく、発表者として参加しよう」を掲げたチームgoyattomは、サブミッションを提出し、7つのセッションが日本から選択されました。参加者はカンファレンスで各々の発表や、各セッションへの参加、諸外国のエンジニアとの出会い、ステージ上で DearXPを熱演などの様々な思い出を抱えて、無事日本に戻ってきました。
マイクロソフトのRobert Bellが、SilverlightとJavaを使用したインターオペラビリティのシナリオを紹介し、サンプルコードを例にとってアーキテクチャの手引きを提供します。
Agileカンファレンスに「参加者としてだけでなく、発表者として参加しよう」を掲げたチームgoyattomは、サブミッションを提出し、7つのセッションが日本から選択されました。サブミッションが選択された人、そうでない人も含めて、個々の目的意識の確認、膨大なプログラムから聞きたいセッションの選択、旅行の準備、プレゼンテーションの準備の期間を終えて、無事当日を迎えました。
筆者はアジャイルソフトウェア開発についての年に一度の国際会議であるAgile2008に初めて参加してきました。今年の日本からの参加者の数は14名にも及び、発表者は5名、受け持ったセッションは8つに及び、例年にない活躍を見せました。なぜ今年のAgile2008では、これほど多くの日本人が参加し発表に至ったのか? そのレポートをお届けします。
エスエムジーでは、Java全般を対象にしたトラブルシューティングサービス「JaTS」を提供しています。この記事では、前回に引き続き、JaTSにて蓄積したトラブル事例とその解決ノウハウの一部をお送りしている「Javaトラブルシューティングメールマガジン」(JTSMM)の総集編として、過去2ヶ月のトラブル事例と追加情報をダイジェストとして提供いたします。
この記事では、モデル駆動アプローチがうまく機能しない、または機能しなくなることによって期待した結果が実現できなくなる 8 つの理由について書きたいと思います。
No comments
返信