軽量かつ高速で起動するランタイム「Liberty Profile」
――Liberty Profileの特長について教えていただけますか。
軽量で高速というニーズを考慮しているので、まず第1の特長は、フットプリントが60MB以下というコンパクトさです。そして第2に、5秒以内の高速起動が可能な点もこれまでにない特長です。さらに、Liberty Profileは無償でダウンロードできます。
また、WASの通常のランタイムの構成は、管理ツールを使用してたくさんの項目を設定するのですが、Liberty Profileでは単一のXMLファイルで管理できるようになっています。標準的な開発ならばデフォルト設定のままで使えますので、構成レスで開発を開始することも可能です。
――Liberty ProfileはJavaのランタイムとのことですが、開発・実行環境はLinuxやWindowsだけですか。
いいえ。Liberty Profileは標準のJDKで実行可能ですので、基本的にJava SEが使える環境であれば利用できます。Mac OS Xの標準JDKでも問題なく動作します。開発者の方を中心にMacBookやiMacなども浸透してきていますが、それらで開発することも可能です。モバイル端末のアプリケーションと連動するためのライブラリも用意されているため、サーバ側のコンポーネント開発の際、クライアント側のブラウザのJavaScriptなどとデータやメッセージのやりとりをすることも、APIベースで可能です。
――実際の開発やデバッグの作業効率はどうでしょうか。
Eclipse用のプラグインとしてWAS Liberty Profile Developer Toolsが、Eclipse Marketplaceから無償でダウンロードできます。
このツールによってサーバの定義、構成などのほか、サーバの起動や停止もGUIで簡単にできます。ブレークポイントの設定やステップ実行などの機能も備えています。
開発中のアプリケーションのデプロイも、プロジェクト内のファイルが変更されたら自動的に行われます。サーバの構成変更なども自動的に検出され、サーバの再起動無しですぐに変更を反映させることもできるので、WASによって開発から本番環境までアジャイル的な開発が可能になります。
項目 | 説明 |
動的サーバ・プロファイル | アプリケーションが必要な機能を自動で判断して追加 |
Developer Firstにフォーカス | シンプルかつ共有可能なサーバ構成。構成情報の共有や再利用を容易にするため、1つのXMLファイル(複数も可)で管理 |
高速起動 | 起動時間:5秒以内 |
ダウンロードサイズ | 50MB以下 |
軽量ランタイム | わずかなメモリ使用量(60MB for TradeLite) |
動的ランタイム | 機能追加や構成変更時に、サーバの再起動が不要 |
統合ツール | 高機能かつ、Eclipseから簡単に使用可能 |
NDのJob Managerと統合可能 | NDのJob Managerからサーバのライフサイクルを管理可能 |
Unzipによる導入とデプロイ | Installation Managerかunzipで導入。サーバ+アプリ+構成情報をUnzipでデプロイ可能 |
プラットフォーム拡充 | 開発用としてMacを追加サポート |
通常のWASとの高い親和性 | 同じ信頼性の高いコンテナとQOSを採用、開発から運用に簡単に移行 |
――開発からデプロイまでWASのプロフェッショナル環境が利用できるようですが、Liberty Profileを利用して開発したアプリケーションと既存のWASアプリケーションとの互換性は?
Liberty ProfileでデバッグしたアプリケーションはそのままWASの本番環境に持っていけます。同じサーブレットコンテナを利用しているので、挙動が変わったりということはほとんどありません。
――Liberty Profileの環境で実行できるアプリケーションの種類に制限はないのでしょうか。
Liberty ProfileはJava EEの全ての機能を実装しているわけではありません。Session BeanやMessage Driven BeanなどのEJBには対応していませんし。またメッセージングエンジンやクラスタリングに対応したトランザクション・マネージャなどもLiberty Profileでは搭載されていません。JAX-WSなどのWebサービスも未対応ですが、将来のバージョンでは拡張される予定です。
――クラスタリング環境では利用できないのでしょうか。
いいえ。データベースを利用して、複数サーバ間でHttpSessionを共有することができますし、Webサーバから複数サーバに転送するための構成も作れるようになっています。また、複数サーバを統合管理するためにJob Managerを利用することができます。
――Job Managerとはどのようなものですか。
WAS Network Deploymentエディションで提供されているコンポーネントで、複数のシングルサーバ環境やセル環境(クラスタリング環境)を統合管理する機能を持っています。通常のセルを管理するDeployment Managerが同期的にセル環境内のプロセスを管理していて、変更や操作が即時に反映されるのに対し、Job Managerはジョブをベースとした非同期的な管理を行います。Job Managerは、サーバの起動・停止、スケジューリングなどの一連の指令をジョブとしてそれぞれのサーバに投入し、実行結果を集計してくれます。Liberty Profileの環境にたいしても、構成変更やアプリケーションの追加、サーバの起動・停止などのジョブを実行させることができます。