IBMから提供されているJava EE対応のアプリケーションサーバー「WebSphere Application Server」には,2012年からLibertyという新しいランタイムが提供されています。このLibertyという言葉はいろいろな意味で使われることがあり,混乱しているケースが(IBM社員でも)しばしばみられますので,整理してみたいと思います。
ランタイム
- Libertyプロファイル / WebSphere Liberty
前者はWAS V8.5の時の名称で,後者はV9.0での名称です。2012年に出荷されたV8.5から新しく追加されたランタイムです。クラウド時代に対応するために新たに開発されたランタイムで,完全モジュール化された軽量・高速なランタイムで,DevOpsやコンテナなどのモダンな環境にも適しています。
現在も活発に新機能の開発や新仕様への対応などが続けられています。
- Fullプロファイル / WebSphere traditional
前者はWAS V8.5の時の名称で,後者はV9.0での名称です。tWASとよばれることもあります。
1998年の登場以来バージョンアップが続けられている,従来型のランタイムです。過去との互換性に優れており,古いJava EEの仕様や,従来提供されていたIBM独自APIなどもほとんどそのまま利用できます。管理概念やツールなどもWAS V5.0のころからのものをほとんどそのまま継承しています。
ただ,モノリシックな実装が限界に達しており,現在提供されているものが最終バージョンで,今後は新機能の実装などはおこなわれません。
ライセンス
IBMから購入するライセンスとしては,三種類のエディションがあります。
- WebSphere Application Server Network Deployment(通称WAS ND)
- WebSphere Application Server(通称WAS Base)
- WebSphere Application Server Liberty Core(通称Liberty Core)
じつは,WAS BaseエディションやWAS NDエディションでも,WebSphere Libertyランタイムは使用できます。これらのエディションのライセンスは,購入いただいたCPU数の範囲で,WebSphere LibertyランタイムとWebSphere traditionalランタイムを自由に選択してご利用いただけます。
Liberty Coreエディションは,安価なWebSphere Libertyランタイム専用のライセンスです。このライセンスでは,WebSphere traditionalランタイムは使用できません。またWebSphere Libertyランタイムも,利用できるAPIがJava EEのサブセット,Web Profileに限定されています。
また,2021年1月からはWebSphere Hybrid Editionというライセンスも購入できるようになっています。このライセンス1コアあたり,WAS NDライセンス 1コア,またはWAS Baseライセンス4コア,またはLiberty Core 8ライセンスとして使用することができます。また変換する組み合わせは,再購入することなく自由に変更することができます。
まとめ
Libertyという名前が,Liberty Coreというエディション名とWebSphere Libertyというランタイム名で混同されて使われることがありますので気をつけましょう。
Libertyを無償で使うには
おおきくは二つの方法があります。
- 製品版を開発者ライセンスで使用する
- OSS版のOpen Libertyを使用する
製品版のWAS BaseのLibertyは,開発者版が無償でダウンロードできます。こちらは,開発者が専有して利用する機器上での実行で使用できます。ローカルのPCでEclipseと組み合わせてテスト実行するなどの用途が想定されています(複数の開発者で共有したり,他からネットワーク経由で接続して利用する開発機などの場合は,有償のライセンスが必要になります)。開発者版は,購入後に提供されるライセンスファイルを適用することで正式版に変更できます。
Open Libertyは,OSS版のLibertyです。Libertyは,現在はOpen Libertyとして開発され,それを取り込む形で製品版が作られています。Open Libertyと製品版のWebSphere Libertyでは,提供されている機能(フィーチャー)が異なっていますが,両方で提供されているフィーチャーは全く同じ機能が提供されていますし,構成ファイルなども共有できます。