Tomcat概要

Tomcat概要

Tomcatは、世界中で広く使用されているオープンソースのWebコンテナである。

Tomcatの正式名称は「Apache Tomcat」だが、単に「Tomcat」と言っても多くの人が認識できるほど、現在のWebコンテナの事実上の標準と言っても過言ではない。TomcatはJava言語で書かれており、Javaが動作する多くのプラットフォームで使用でき、安定していて軽量で性能も良いため、多くのエンタープライズシステムでも活用されている。

TomcatはJava ServletおよびJSP(JavaServer Pages)のリファレンス実装としてSun Microsystems社で開発が始まり、1999年にApache Software Foundation(ASF)へ寄贈された後、初期バージョンとして3.0が発表された。

Tomcatという「雄猫」を意味する名前は、単独で行動し戦えるというイメージから来ており、開発者James Duncan Davidsonによって命名された。

現在も積極的にバージョンアップされており、Apache Software Foundationが保有するトップレベルプロジェクトの一つとして進化を続けている。

最新バージョンの10.0.xでは、Servlet 5.0、JSP 3.0、EL 4.0、WebSocket 2.0、HTTP/2などの機能が含まれている。現在開発中の次期バージョン10.1.xでは、Servlet 6.0、JSP 3.1、EL 5.0、WebSocket(バージョン未確定)、Authentication(JASPIC)(バージョン未確定)が実装される。

Tomcatライセンス

Tomcatのライセンスは「Apache License version 2」に基づいて公開されており、営利・非営利を問わず誰でも自由かつ無料で利用、変更、再配布できる。 TomcatはServlet/JSP仕様をサポートするリリースモジュールを使用する。

Tomcatと類似したソフトウェア

商用ソフトウェア製品では、WebLogic ExpressやWebSphere Application Server ExpressがTomcatと類似した機能を提供する。

Tomcatの主な特徴

Tomcatには高性能と高い安定性だけでなく、次のような特徴がある。
機能や性能、実績などは商用製品と比べてもTomcatでほとんど変わらないため、「よりオープンスタンダードである」「よりコストを削減できる」という点がTomcatを選ぶ決め手になっているようである。

  • JSP/Servlet標準仕様
    • TomcatはJava ServletとJSPの公式リファレンス実装として開発および実装された。
    • Tomcat単体でもWebサーバー(httpd)として動作するが、通常はApacheやIISと組み合わせて使用する。
  • 軽快な動作、安定性
    • Tomcatは動作が安定していて軽量なため、商用製品のように高スペックなハードウェアを必要とせず、インストールも容易である。
  • マルチプラットフォーム
    • TomcatはRed Hat Enterprise Linux、SUSE Linux、Sun Solaris、HP-UX、Microsoft Windows、AIXなど、さまざまなOSプラットフォームをサポートする。
  • 世界中で利用されている
    • 世界中で広く使われているWebコンテナの事実上の標準であり、多くの導入事例がある。
  • 高機能、高性能
    • TomcatはJSP/Servlet標準仕様として、機能は商用製品と同等であり、性能も商用製品と同等、またはむしろ高速である。
  • 技術者を集めやすい
    • Tomcatは世界中で利用されているデファクトスタンダードであるため、大人数で開発するプロジェクトや海外開発などでも技術者を集めやすい。また、環境構築や開発に余分な教育コストがかからず、知的資産を共有しやすいなどの利点もある。
  • 長期間利用可能
    • 通常、商用製品のサポートは3~5年だが、Tomcatは動作が安定しているため、サポートなしでも長期間利用できる場合が多い。
  • コスト効果
    • Tomcatは高機能なWebコンテナでありながらライセンス費用がかからないため、気軽に使用でき、商用製品に比べてコストを大幅に削減できる。

TomcatおよびServlet/JSPバージョン対応表

Apache Tomcatバージョン Servlet Spec JSP Spec EL Spec WebSocket Spec JDK
10.1.x 6.0 3.1 5.0 2.1 8以上
10.0.x 5.0 3.0 4.0 2.0 8以上
9.0.x 4.0 2.3 3.0 1.1 8以上
8.5.x 3.1 2.3 3.0 1.1 7以上
8.0.x(EOL) 3.1 2.3 3.0 1.1 7以上
7.0.x(EOL) 3 2.2 2.2 1.1 6以上
6.0.x(EOL) 2.5 2.1 2.1 - 5以上
5.5.x(EOL) 2.4 2 - - 1.4以上

参照元: http://tomcat.apache.org/whichversion.html