はじめに
そういえば昨年も WebSphere Application Server Traditional と Liberty についての記事を書いた気がしますが、今年一年活動してみて、やはりなかなか Liberty 浸透しないなーということで、今年は内容を超基本に絞って WebSphere Application Server Traditional (以下 tWAS) と WebSphere Application Server Liberty (以下 WAS Liberty) について書こうと思います。
今回は、先日オンラインで開催しましてご好評をいただきましたセミナーのダイジェストとしてお届けします。
WebSphere は今年で 27周年
いやー、いつの間にやら 27周年ですねー。何と四半世紀以上。びっくりです。
WebSphere Liberty は WebSphere の「新しいランタイム」と言いつつ、2012年の登場ですので もう 13年経つんですね。
(WebSphere) traditional と Liberty の比較 (超概要)
ここ重要です。試験に出ます(?)。
tWAS と WAS Liberty は IBM 製の WebSphere ブランドのアプリケーション・サーバーであるところまでは同じですが、サポートする Java SE のバージョンは 8 を境に、Java EE のバージョンは 7 を境に分かれていますね。
アイコン…はまぁいいとして、その他、つまり導入・構成・運用・サポートライフサイクルなどは tWAS と WAS Liberty で全く異なります。
ちなみに WAS Liberty のアイコンは、Liberty と言えば The Statue of Liberty、つまり自由の女神ということで、女神様がトーチを掲げて走っている図柄になっています。
WebSphere Liberty のサポート
Liberty のバージョン番号

Liberty のバージョン番号は tWAS のような V.R.M.F (Version.Release.Modification.Fixpack) 形式ではなく、<リリース年の西暦下二桁>.0.0.<リリース年でのリリース回数(おおよそ「月」)> となっています。
「おおよそ」と言いますのは、過去に確か一度だけ 13 が出たためで、その他の年は月だと考えてよいと思います。
バージョン番号の形式からも想像できると思いますが、WebSphere Liberty は毎月リリースされます。
(WebSphere) traditional と Liberty のサポートサイクル

tWAS のサポートサイクルは現在は "Other" サポートとなっており、バージョン 8.5.5 と 9.0.5 の少なくとも 2030年までのサポートが表明されています。
より正確にはこちら のように、Oracle 社の Java SE 8 Extended Support 日付を越えて (beyond) サポートすることを意図している (intend) とあります。この記事の執筆日現在、Oracle 社は Java SE 8 Extended Support 期限を 2030年12月としています。
一方、WAS Liberty のサポートサイクルは SSCD (Single Stream Continuous Delivery) と呼ばれるものになっています。詳しくは WebSphere Liberty:継続的シングル・ストリーム・デリバリー(SSCD)ライフサイクル・ポリシー をご参照下さい。
また、IBM ソフトウェア全体のサポートサイクルにつきましては こちら をご参照下さい。
WebSphere Liberty の 2大メリット
WAS Liberty のイイところはたくさんありすぎていつも長くなってしまうのですが、今回は厳選 2つをお伝えしたいと思います。
徹底的にモジュール化されたWebSphere Liberty
WAS Liberty は必須モジュールのカーネルと、任意で構成可能なフィーチャーの組み合わせでできています。
フィーチャーはアプリケーションで使用するモノだけを選んで設定することができるので、必要最小限のフットプリントのランタイムを構成することが可能になっています。
つまり、tWAS の説明の際によくご質問いただいた、「(起動に時間がかかるので) 必要な機能だけ選んで起動できないの?」が実現したことになります。
Libertyのゼロ・マイグレーション・ポリシー
もう一つ、お客様から絶大なご支持をいただいている特徴が、このゼロ・マイグレーション・ポリシーです。
WAS Liberty は不可避な場合を除いて、いったんリリースされたフィーチャーが使えなくなることがありません。
つまり、Java SE は各バージョンの EoS に合わせてマイグレーションが必要ですが、Liberty で主に Java / Jakarta EE や Microprofile の機能に相当するフィーチャーについてはマイグレーションが不要となり、アプリケーションの寿命が延びることになります。
このゼロ・マイグレーション・ポリシーは他のアプリケーション・サーバーにはみられない、Liberty の強力な特長の一つになっています。
WebSphere Traditional から WebSphere Liberty へ
Migration Toolkit for Application Binaries

Migration Toolkit for Application Binaries は tWAS で実行されているアプリケーションの EAR / WAR ファイルを準備するだけ (ソースコード不要!) で、Liberty への移行に際して必要なアプリケーションの修正や考慮点をレポートしてくれるツールです。
稼働前提条件も Java SE 7 以上が利用できることだけなので、容易に使用することができます。
また、OpenRewrite を使用したアプリケーションの自動マイグレーションにも順次対応しており、OpenRewrite レシピが存在する修正内容であれば pom.xml を構成した後にコマンド一発でコードの書き換えが完了します。
この自動マイグレーションをやってみた手順の解説セミナー資料をこちら で公開しておりますので、ご興味ある方はぜひご覧下さい。
IBM Bob

いよいよ IBM からも AI プログラミングを可能にする IBM Bob が発表されました。
発売はまだ先になるのですが、テクニカル・プレビューをご試用いただくことができます。こちら の最下部にある青枠のフォームからエントリーいただくと、準備が整い次第、ご招待が届きます。ご興味ある方はぜひエントリーしてみて下さい。
私も社内試用版 Bob で、tWAS から Liberty へのマイグレーションのデモ用アプリケーション ModResorts を Liberty に移行してみました。プロンプトでの普通の日本語での指示や対話により、完全な全自動とはいかないまでもかなりの部分を自動マイグレーションしてくれました。体感的には 80-90% 程度の手間が省けた感じです。
おわりに
昨年に続き、WebSphere Application Server Traditional と WebSphere Application Server Liberty の違いと、tWAS から WAS Liberty への移行について書いてみました。
今年は超基本版かつ内容も厳選して短く読みやすいようにまとめてみましたので、これを機にもしまだの方は WAS Liberty への移行を検討してみて下さいますと幸いです。



