WebSphereの歴史を振り返る (2024年版)

WebSphereは2023年で25周年を迎えました。今年は26年目になります。
WebSphereは、現在はWebSphere Application Server(WAS)となりますが、2000年〜2010年代はIBMソフトウェアの1ブランドとして、さまざまな製品の冠に付けられていました。例えば代表的な製品として、
- WebSphere Application Server
- WebSphere MQ (現：IBM MQ)
- WebSphere Message Broker (現：IBM AppConnect Enterprise)
- WebSphere Studio (現：Rational Application Developer)
- WebSphere Process Server (現：IBM Business Automation Workflow)

正式なブランド名称はApplication and Integration Middleware(AIM)でしたが、みんな WebSphereに愛着と誇りを持ち、Java EEアプリケーションサーバーの基幹システムでの稼働やメッセージ基盤、サービス指向アーキテクチャー(SOA)、API基盤などの企業システムを支えるミドルウェアとして進化しています。

ここからWASを中心に、これまでのWebSphereの歴史を振り返っていきましょう。
昨年の25周年アニバーサリーとして[専用サイト](https://www.ibm.com/blogs/solutions/jp-ja/anniversaryforum2023/)もありますので、こちらもご参照ください。
# WASの初期(V1 - V4）
WASは1998年にV1が出荷されました。当時はJava Servletエンジンに基づく実装でした。その後V2でJava BeansとCORBAをサポートしました。2000年7月に出荷したV3.5はJ2SE 1.2やServlet 2.1仕様などに準拠し、世界中で幅広く利用されたバージョンです。

この記事を書くにあたり過去の資料を探したところ、V4とV5のセールスガイドが見つかりました。当時営業や技術、パートナー様に配られていた冊子です（約100ページ）。
![IMG_0244.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3927232/147f9e01-5936-071e-1539-f14926f98f44.jpeg)

このガイドからWAS V4の構成を見てみましょう。V4はJ2EE 1.2準拠しています。WebサーバーとしてIBM HTTP Server(IHS)だけでなく、複数のWebサーバーが選択できることがわかります。またバックエンドコネクターはJ2EE 1.3を先取りして取り入れられています。CORBA通信をベースにしたEJBにも対応しています。
![IMG_0245.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3927232/70afaf41-f45f-31bf-4831-f1670ebd777c.jpeg)

# WASの発展期(V5 - V8）
2002年11月出荷のV5でコードベースが一新され、プラットフォーム間(Windowsからz/OS）で共通のコードベースを使うようになり、XMLファイルによる構成リポジトリを採用しました。当時の資料はこちらです。
![IMG_0247.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3927232/b6604ab4-3a41-558f-c175-baef6bdbaab9.jpeg)
WAS traditionalをお使いの方にはお馴染みのデプロイメントマネージャーによるノードの管理は運用管理を簡素化するとともに、各コンポーネントを疎結合にすることで耐障害性を高めました。J2EE1.3に準拠し、EJBのワークロード管理や複数リソースの2フェーズコミットが強化され、Webサーバーだけでなく、基幹システムのトランザクションサーバーとしても利用されるようになりました。

私はある企業のV5.1で30台以上のAPサーバーをクラスタリングをしたシステムの提案と運用支援を行ったのですが、システム構成の検討や障害テストにおけるEJBのCORBA/IIOPトレース、GCログ、JVMクラッシュ時のLinuxのCore（解析自体はサポートが行いますが）などを実際に行って、JavaとWASを習得していきました。今でもこの経験は生かされています。

2004年12月に出荷したV6ではHAマネージャーの機能が追加されました。また、J2EE 1.4準拠しています。その後もJava SEやJava EEの最新仕様に追随する形で新バージョンを提供してきました。既存WASユーザーのバージョンアップも多くなってきました。
- V6.1 : 2006年5月出荷　Java SE 1.5準拠
- V7 : 2008年9月出荷　Java SE 6、Java EE 5準拠
- V8 : 2011年6月出荷　Java EE 6準拠

# WAS Libertyの登場(V8.5）
2012年6月に出荷したV8.5から新しくLibertyランタイム（当時はLibertyプロファイル）が追加されました。[V8.5の最新情報ワークショップ資料](https://community.ibm.com/community/user/wasdevops/viewdocument/websphere-application-server-v85-3?CommunityKey=d6c93aa2-6e10-48da-96dc-3831da8ee185&tab=librarydocuments)が公開されていますので、その紹介ページを見てみましょう。
![スクリーンショット 2024-12-03 17.56.09.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3927232/849d0fac-0a99-8c6a-ed4c-75ba490c0fe6.png)

クラウド時代に対応するために新たに開発されたランタイムで，完全モジュール化された軽量・高速なランタイムで，DevOpsやコンテナなどのクラウドネイティブ開発にも対応しています。ランタイム自体の起動時間は5秒以内というフレーズに心がおどりました。12年前から登場していることに驚きを感じます。またOpen Libertyとしてオープンソース実装を公開することで広く利用されることになりました。（IBMではOpen Libertyに対するサポートも提供しています）

# WAS tradiionalとWAS Liberty
2016年6月に出荷したV9.0で従来のランタイムであるWAS traditional(tWAS）は最終バージョンで、今後は新機能の実装などは行われないことになりました。

(参考)[WAS traditional 8.5.5/9.0.5の標準サポート提供の延長(少なくとも2030年まで)のお知らせ](https://www.ibm.com/support/pages/was-traditional-855905%E3%81%AE%E6%A8%99%E6%BA%96%E3%82%B5%E3%83%9D%E3%83%BC%E3%83%88%E6%8F%90%E4%BE%9B%E3%81%AE%E5%BB%B6%E9%95%B7%E5%B0%91%E3%81%AA%E3%81%8F%E3%81%A8%E3%82%822030%E5%B9%B4%E3%81%BE%E3%81%A7%E3%81%AE%E3%81%8A%E7%9F%A5%E3%82%89%E3%81%9B)
![スクリーンショット 2024-12-03 18.20.05.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3927232/0d2feb07-0023-a1a2-69d9-5aa44c5fd26c.png)

WAS Libertyは毎月FixPackが提供され、いち早く新機能を提供すると共に「ゼロマイグレーション・ポリシー」によってFixPack適用による、アプリケーションや構成への影響をなくしています。最近はLibertyランタイムへのマイグレーションも進んでおり、クラウドやコンテナでの利用も増えています。

![スクリーンショット 2024-12-03 19.05.55.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3927232/471e7f7d-dad0-b6ad-bdfb-a0d5d7b456e9.png)

# おわりに
WASやOpen Libertyの情報は[日本WebSphereユーザーグループ](https://ibm.biz/JapanWebSphereUG)のサイトから入手可能です。ブログやライブラリ、Q&A(ディスカッション)のやり取りが可能です。End of Support(サポート終了)の情報も公開しています。

Open LibertyのFixPackの[日本語ブログ](https://openliberty.io/ja/blog/)も有志で翻訳していますので、ご活用ください。

昔の資料を探していると、先輩にいただいた1998年の長野オリンピックの記念時計が出てきました。IBMは長野オリンピックと、2000年のシドニーオリンピックのITスポンサーでした。セールスガイドにはシドニーオリンピックのリアルデータとして、
- 期間：9月13日〜10月1日
- 総アクセス数：113億件
- 総ページ閲覧数：2.3億ページ
- アクセス人数：870万人
- 1日あたりの最大アクセス数：9月26日、8億7450万件
- 瞬間最大アクセス数：1分あたり120万件
- システム稼働率：100%

WebSphereはこのオリンピックでの実績と教訓から発展したという追記をして、この記事を終わりにしたいと思います。
![IMG_0249.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3927232/e38808cb-a6ca-ce44-b523-0ca63f7a89a6.jpeg)