TomcatとJBossの違い
正直よくわからなくて苦手だったアプリケーションサーバの分野なのだが、諸事情により
そうも言ってられなくなってきたので、まとめてみることにした。
とりあえずTomcatとJBossの違いあたりから。
まずTomcat。
TomcatはJakartaプロジェクトのサブプロジェクトとして開発されているオープンソースの
ソフトウェアで、JavaでWebアプリケーションを開発する際に使用するJSPとServlet
を実行させるためのエンジン(JSP/Servletコンテナ)である。
言い換えると、TomcatはJSPやJavaサーブレットを処理するアプリケーションサーバである。
JSP/Servlet
Sunによって開発されたサーバサイドのJava技術で、動的コンテンツ
生成/提供のための仕組みのひとつである。
なお、JSPはJavaServer Pagesの略。JSPとサーブレットについては以下に書いた。
↓ ↓ ↓
あらためて、サーブレットとJSPの比較など
Tomcatは単独でWebサーバとして動作することも可能だが、ApacheやIISのプラグイン
として動作できるようになっており、実際にはプラグインとしての利用が主流である。
TomcatはWebサーバと連携して実行できるJavaコードの環境を提供する、SunのJava Servlet
と JSPの仕様を実装している。
これに対して、JBossはEJBのオープンソース実装であるアプリケーションサーバソフト
ウェアである。
EJB(Enterprise JavaBeans)
プログラムをコンポーネント化し、効率良く大規模アプリケーションを
構築するためのアーキテクチャ。詳細は以下など参照。
特集:第1回 EJBの仕組みを知ろう (1/6)
JBossとTomcatの違い
両者の違いを簡単にいうと、EJBが使えるか否か、という点にある。
TomcatだけではEJBは使えないので、EJBを使いたいときにはJBossを使うということになる。
なお、JBossはWebコンテナとしてTomcatを採用している。
そのため、JBossをインストールすれば、EJBだけでなく、JSP/Servletも実行できる。
ただしJBossは、あくまでもEJBを動かすもの、つまりJ2EE対応アプリケーションサーバソフト
であり、本来JSP/Servletは動作しない。JSP/Servletを動かす分を担当させるために、
JBossにTomcatが付随しているのである。
ごちゃごちゃ書いたが、EJBを学習したいならJBossを、とりあえずJSP/Servletを学習
したいならTomcatを選択すれば良い。と、いうことらしい。
参照URL
第1回:Tomcatって何ですか?