はじめに
JBoss Enterprise Application Platform (JBoss EAP)とは、
RedHatの製品でありJava EEアプリケーションサーバです。
今回は、そんな JBoss EAP とはなんぞや?というあたりを周辺の用語から分かりやすく記事にしてみました。
まずは、RedHatの製品というところから掘っていきます。
RedHatの製品群
RedHat社と言えば、商用サービス向けのLinuxであるRed Hat Enterprise Linuxが有名です。
しかし、他にも多くの製品を扱っています。
参考までに、2018年現在でRedHat社の公式HPにて製品として紹介されているものを
Linux、ミドルウェア、仮想化、クラウド、ストレージ、モバイル、管理という6つのジャンルで可視化(Text2Mindmap)しました。
数多くの製品の中でもミドルウェア製品の多さが目につきます。
そのミドルウェアの中でもJBossから始まる製品がいくつかあります。
JBossとは?
JBossとはプロジェクト名でもあり会社名でもあり、製品名でもあります。
JBossプロジェクトとはJavaミドルェアを中心としたオープンソースコミュニティプロジェクトです。
また、企業としてのJBoss社は2006年にRedHat社によって買収され、現在はRedHat社の製品として提供されています。
その中でも「JBoss Application Server」がJBoss製品の主力です。
JBoss EAP
上記でJBoss Application Serverと記載しましたが、こちらはタイトルにもあるJBoss EAPとほぼ同義です。
ただし、RedHat社が提供しているのが後者で、前者はJBossコミュニティが提供しています。
名称も「JBoss Application Server」ではなく「WildFly」に改名されました。
役割としては同じですが、主に企業向けではサポートのあるJBoss EAPが採用される傾向にあります。
JBoss EAPはJava EEの仕様に準拠したアプリケーションサーバでオンプレミスでもクラウドでも利用可能です。
JARやWAR*1のモジュールをデプロイして利用するなど、同じく企業向けのアプリケーションサーバであるWASが競合製品です。提供している機能もよく似ています。
JBoss EAPのインストール
Jboss EAPのインストールにはWASと同じようにJavaが必要です。
RPMであれば、
# yum groupinstall jboss-eapX
といったようにコマンドベースでインストール可能です。(Xには数字が入る)
https://www.slideshare.net/rayploski/jboss-application-server-7 p18より抜粋
簡単なファイル構成も合わせて添付しておきます。
補足
構成として以下のような図がありました。
https://www.hitachi-solutions.co.jp/redhat/sp/product/jboss/eap/ より図を抜粋
以下、直感的に意味がわかりづらかった用語をピックアップして補足しておきます。
何かの拍子でこれらの略語を見ても文脈を掴めると思います。
MSC
Moduler Service Containerの略で、JBoss Modulesと同じくモジュールを管理する仕組み
DMR
Dynamic Model Representationの略で、API周りを管理する仕組み
終わりに
JBoss EAPはRedHatのアプリケーションサーバで、Java EEの仕様に準拠しています。
以上、ご参考になれば幸いです。
*1:WAR : Web Application Archiveの略