Javaアプリケーションサーバ大手の米BEA Systemsは3月8日、同社のJava開発ツールである「BEA WebLogic Workshop」を今後はオープンソースのJava開発ツール「Eclipse」のプラグインとして提供していくことを明らかにした。同プラグインのコードネームは「Daybreak」。副社長兼ゼネラルマネージャのボブ・グリスウォルド氏が明らかにした。
Daybreakの元となる BEA WebLogic Workshopは、商用J2EEアプリケーションサーバ(EJBコンテナ)の「BEA WebLogic Server」を中心とするBEA WebLogicファミリのJava開発環境である。BEA WebLogicが持つ固有の機能に特化した開発機能を備えており、BEA WebLogicの開発者が無償で利用できる。
米BEA Systems Vice President, General Managerのボブ・グリスウォルド氏 |
一方のEclipseは、Eclipse Foundationと呼ぶオープンソースコミュニティが開発するJava統合開発環境で、元々は米IBMがEJBコンテナファミリのIBM WebSphereを開発する際に利用していた社内ツールである。オープンソースとして広く公開し、現在は米IBMの手から離れている。なお、IBM WebSphereの開発環境であるIBM WebSphere StudioはEclipseをベースとしている。
BEA WebLogic WorkshopをプラグインとしてEclipseから使えるようにさせる背景には、Java開発環境としてEclipseが圧倒的な人気を誇っているという状況がある。BEA SystemsもEclipse Foundationに参加しており、オープンソースのEclipseを推進する立場にある。プラグインのDaybreakは当初オープンソース化はしないが、「個人的に、最終的にはオープンソースとして公開したい」(ボブ・グリスウォルド氏)としている。
Daybreakは2つのプラグインで構成する。(1)BEA WebLogicのJavaVM(仮想マシン)であるJRockitのプロファイラ「JRockit Runtime Analyzer」(JRA)を使えば、Eclipseから性能のボトルネックをマウスクリックによるドリルダウンで調査できるようになる。(2)JavaVMのヒープ領域(メモリ領域)のメモリリークを発見する「Memory Leak Detector」(MLD)を使えば、放置されたオブジェクトが増えるなどの理由で起こる問題を発見できるようになる。
BEA WebLogic WorkshopのEclipseへのアプローチと同様、Javaを拡張したアスペクト指向(AOP:Aspect-Oriented Programming)言語でも、同社の「AspectWerkz」を「Eclipse AspectJ」に融合させる。「AspectJはPureJavaではない。AspectJユーザーにAspectWerkzへのマイグレーションパスを提供できる」(ボブ・グリスウォルド氏)としている。アスペクト指向Javaは、オブジェクト間にまたがるために複数個所に記述していたコードをオブジェクトのコードから独立させるもので、最近話題になっている。
ボブ・グリスウォルド氏はまた、BEA WebLogicの大きな利点であるJRockitについて今後のロードマップを語った。
2005年第四四半期には、参照されないオブジェクトをメモリ領域から消去するガベージコレクション(GC)の仕組みを改良。詳細は不明だが、新しいGC方法を実装することで、GCによってアプリケーションが停止する時間を従来よりも少なくできるという。Jrockitは現在でも、ヒープ領域のサイズなどJavaVMの起動時オプションを動的に変更する機能を持っており、こうした手法も同時に実施するという。一般には、あまり使われないオブジェクトを格納するメモリ領域を減らすことで大きなGCを起こさないようにしたり、GCをひんぱんに起こすことで1回あたりのGCにかかる時間を短縮したりするのが定石だ。
同時に、これまではIntelアーキテクチャのCPUに限って最適化していた動作環境をUnix機にまで広げる。具体的には、SPARC/Solaris、PowerPC/AIX、IPF(Itanium Processor Family)/HP-UXである。Intelアーキテクチャの64ビットCPUへの対応は2004年12月にすでに対応済みである。
CNET Japanの記事を毎朝メールでまとめ読み(無料)
ZDNET×マイクロソフトが贈る特別企画
今、必要な戦略的セキュリティとガバナンス
ものづくりの革新と社会課題の解決
ニコンが描く「人と機械が共創する社会」