0

Tomcatとは?JBossとは? その違いとは?

Web開発では必ずアプリケーションサーバ(APサーバ)とかWebサーバなどという言葉が出てきます。
ここでは「アプリケーションサーバ」とは何者なのか、またこの「アプリケーションサーバー」として使用されている「JBoss」と「Tomcat」の機能や違いについて整理しておきます。

その前に「アプリケーションサーバ」って何?
という方もいると思いますので、簡単にまとめておきます。

アプリケーションサーバとは

Webシステム開発する上で構成される
「プレゼンテーション層」
「アプリケーション層」
「データ層」

この3階層モデルにおいて、「アプリケーション層」のプログラムを実行するサーバーのこと。

アプリケーションサーバで提供するのは基本的に以下の3つとなります。
Javaなどのプログラム実行環境やデータベースへの接続機能の提供。
複数の処理(スレッド)を連結するトランザクション管理機能。
業務処理の流れを制御するビジネスロジックの実装。

Jbossとは

EJB(Enterprise JavaBeans)のオープンソース実装であるJavaによるオープンソースソフトウェア開発コミュニティのこと。
JBossはEJB(J2EE対応アプリケーション)を動作させるためのサーバソフトウェアとして利用されています。
本来JSPやサーブレットは動作しませんが、これらを動作させるためにWebコンテナとしてTomcatを採用しています。
Jbossで提供される機能は「JTAトランザクションマネージャ」、「EJB」、「MDB」、「JPA」、「JMS」、「JCA」、「JAX-WS」、「JMX」、「log4jを用いたログ基盤」、「分散キャッシュなどの各種クラスタリングサービス」などがあります。

Tomcatとは

Apache Tomcat Project内で開発されているオープンソースのソフトウェア。
JavaサーブレットやJSPを処理するアプリケーションサーバ(APサーバ)/サーブレットコンテナの一つ。
単独でWebサーバとして動作することも可能。
実際にはプラグインとしての利用が主流となっています。
Tomcatで提供される機能は基本的にServlet, JSP, JDBC接続プールのみ。
とつらつら書いてみましたが、
要はJbossもTomcatも「JavaをWeb(ブラウザ)上で動かすためのプログラム」という感じで理解しておけば最初の内はいいのかなあと思います。
ただTomcatでは使用出来る機能が限られる為、Tomcatの機能も包含しているJBossを使用しているケースが最近は多いようです。

以上です。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です