Skip to content

Instantly share code, notes, and snippets.

@ozuma
Created November 20, 2014 13:49
Show Gist options
  • Save ozuma/27fdcf3b7c85eab658d1 to your computer and use it in GitHub Desktop.
Save ozuma/27fdcf3b7c85eab658d1 to your computer and use it in GitHub Desktop.
JBossとTomcat

JBoss

  • JBossは2つある
    • Red Hatが出している「JBoss Enterprise Application Platform(JBoss EAP)」
    • コミュニティ版(オープンソース版)である「JBoss (あるいはJBoss Application Server, JBoss AS とも呼ばれる)」、これは最近「WildFly」という名前に名称変更
  • 単にJBossと言うと、アプリサーバの部分と「JBoss Web Server」と呼ばれるWebサーバの部分の両方が含まれるので、それ単体でサービスもできる
    • 同様にTomcatも、「Coyote」と呼ばれるWebサーバを同梱しているので、Tomcat単体でもサービスできる。
  • JBossはサーブレットコンテナを持っていない(すなわちServlet APIが使えない、例えばjavax.servlet.http.HttpServletRequestとか)ので、単体ではサーブレットが動かない。しかし、内部にTomcat相当のものを同梱しているので、これでサーブレットを動かす。「JBossは中にTomcatが入ってる」というのは、半分正しく半分誤り。正しくは、「Tomcatを魔改造したものが入っている」

対Tomcat

  • 基本的に、「JBossは重くて高機能」「Tomcatは軽くてシンプル」。マリオカートで言えばクッパとヨッシー。
  • Tomcatはサーブレット/JSPコンテナ(がメイン)。JBossはアプリケーションサーバ(がメイン)。
  • JBossは、EJB(Enterprise JavaBeans)が使えるのが一番のウリ。これは色んなクラスライブラリの詰め合わせで、業務ロジックをこれで書きたければJBoss必須ということになる

まとめ(合ってるか?)

  • JBoss
    • Webサーバ(JBoss Web Server) + アプリケーションサーバ(EJBなどクラスライブラリ群) + サーブレット/JSPコンテナ(Tomcatを魔改造したもの)
  • Tomcat
    • Webサーバ(Coyote) + サーブレット/JSPコンテナ(Catalina + Jasper)

参考リンク

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment