[製品紹介]
オープンソースEJBサーバのデファクトを目指す
JBoss 3
JBossの今後 − Beyond J2EE |
現在JBoss 4の仕様確定および実装が進められている。そこから垣間見えるJBossの今後について説明しよう。JBossの革新がいまなお続いていることが分かるはずだ。
まず、ロードマップであるが、現在、JBoss4DR2(Developer Release)が公開されている。8月から9月の間にJBoss4DR3のリリースが予定されていたが、執筆時現在まだ公開されていないため、スケジュールが若干遅れているようだ。そして、11月から12月の間にJBoss 4がリリース予定である。
JBoss 4では、J2EE 1.4への対応も予定されているが、「Beyond J2EE」のキャッチフレーズに現れているように、J2EEを超えるフレームワークが実装される。既存のJ2EEをさらに使いやすくするようなフレームワークだ。それを支えるのが、Aspect Oriented Programming(AOP)の採用である。
J2EEの課題 |
J2EEを使えば、分散オブジェクトを組み立てるコンポーネントを構築したり、トランザクションやセキュリティの境界を宣言的に扱ったりすることができるので、確かに優れたフレームワークである。しかし、すべてのユーザーがJ2EEのすべての機能を必要としているわけではない。J2EEの仕様は重厚長大であり、その一部だけを利用したい場合もあるが、そのようにJ2EEを「アラカルト」として利用することはできない。また、実装面では、複数のファイルを連携して扱わねばならないので開発の手間が大きい。さらに、J2EEのクラス階層にしばられるため、クラス設計の自由度が低い。
AOPを取り入れたJBoss 4 |
このような課題に対する解決手段となるのがJBoss 4である。J2EEにあるようなさまざまな機能がJBoss内のアスペクトとして提供される。例えば、トランザクションやセキュリティ・キャッシング・リモートアクセスの機能を提供するアスペクトサービスなどがある。そのため、理想的には、通常のJavaクラス(Plain Old Java Objects[POJO])を開発してJBossにデプロイするだけで、そのクラスにJ2EEのような機能が備わることになる。アスペクトは選択可能なため、ユーザーが必要とする機能のみ使えばよい。このように、JBoss 4を使えば、より簡単にアプリケーションを構築できるようになる。
AOPの採用により、1つ1つの機能の独立性が高まり、ユーザーの選択の幅が広がったわけだが、このような設計思想はJBossを貫くものである。上述したマイクロカーネルアーキテクチャでは、ひとつひとつのサービスの独立性が高く、サービスの追加や削除が再起動することなく動的にできるようになっている。さらに、JBoss 3のEJBコンテナにはインタセプタというアーキテクチャがあるが、これはある意味アスペクトだといってもよいものだ。従って、いままでの設計思想がAOPの力でより洗練されたものになったのがJBoss 4である。
|
|
以上のように、JBossは、商用・非商用を問わず利用価値の高いアプリケーションサーバである。
フリーソフトウェアであるJBossは、さまざまなJavaのFree Software、Open Source Softwareを利用し、その成果の上に成り立っている。1つ1つのアイデアはJBossの独創というわけではないが、ほかのライブラリを理解して巧みに拡張し、現実的なプロダクトに昇華させている。いうなれば、Javaのオープンソースという食物連鎖の頂点に君臨するのがJBossだ。JBossを利用するとともに、その今後に注目していきたい。
|
3/3 |
INDEX |
||
JBOSS | ||
Page1 |
||
Page2 JBossの機能 使いやすアプリケーションサーバ マイクロカーネルアーキテクチャ クラスタリング |
||
Page3 JBossの今後 〜 Beyond J2EE J2EEの課題 AOPを取り入れたJBoss 4 |
- 実運用の障害対応時間比較に見る、ログ管理基盤の効果 (2017/5/9)
ログ基盤の構築方法や利用方法、実際の案件で使ったときの事例などを紹介する連載。今回は、実案件を事例とし、ログ管理基盤の有用性を、障害対応時間比較も交えて紹介 - Chatwork、LINE、Netflixが進めるリアクティブシステムとは何か (2017/4/27)
「リアクティブ」に関連する幾つかの用語について解説し、リアクティブシステムを実現するためのライブラリを紹介します - Fluentd+Elasticsearch+Kibanaで作るログ基盤の概要と構築方法 (2017/4/6)
ログ基盤を実現するFluentd+Elasticsearch+Kibanaについて、構築方法や利用方法、実際の案件で使ったときの事例などを紹介する連載。初回は、ログ基盤の構築、利用方法について - プログラミングとビルド、Androidアプリ開発、Javaの基礎知識 (2017/4/3)
初心者が、Java言語を使ったAndroidのスマホアプリ開発を通じてプログラミングとは何かを学ぶ連載。初回は、プログラミングとビルド、Androidアプリ開発、Javaに関する基礎知識を解説する。
|
|