Tomcatって何ができるのですか?

2007年8月2日(木)
羽倉 敬

Tomcatの特徴

Tomcatはサーブレット/JSPの解説では、必ずといっていいほど例に使われているサーブレットコンテナです。その最大の理由として、TomcatがSun公式のサーブレットコンテナの参照実装(Reference Implementation)であることと、無償で提供されていることがあげられるでしょう。特に参照実装であることは重要な意味を持ち、Tomcat が、Sunのサポートするサーブレット/JSPの仕様に100%準拠することを示します。

Tomcatは現在、サーブレットコンテナのデファクトスタンダートといっていい地位を確立しています。機能はシンプルですが、オープンソース開発による高い性能と信頼性は、TomcatがJ2EEアプリケーションサーバJBossのアプリケーションコンテナとして採用されていることからも伺えます。

Tomcatの誕生

サーブレット技術が登場した当初、SunはJava Web Serverというサーブレットコンテナ(当時はサーブレットエンジンと呼ばれていました)をリリースしていました。このサーブレットコンテナは、サーブ レット技術を世に知らしめる働きはしましたが、堅牢性に問題をかかえていました。同時期にApache Software Foundation(ASF)の開発グループはApacheと連携するサーブレットコンテナとしてJServをリリースしています。

その後、1999年6月にサンフランシスコで開催されたJavaOneにおいて、Sunが自社のサーブレットコンテナのコードを含むJSWDK(Java Server Web Development Kit)をASFに寄贈したことで、Jakarta Projectが誕生します。このJakarta Projectのサブプロジェクトとして、2つのコンテナが統合されTomcatが生まれることになりました。


Apache Software Foundation
http://www.apache.org/
Jakarta Project
http://jakarta.apache.org/

Tomcatの機能

Tomcatは以下のような機能を備えています。

サーブレットコンテナ機能

TomcatはServlet APIとJSP APIを実装しています。これによりサーブレット/JSPを動作させたりセッション管理を行ったりすることができます。Tomcatのバージョンによって対応するサーブレット/JSPのバージョンも異なります(表1)。


Apache Tomcat version Servlet API JSP API
6.0.13 2.5 2.1
5.5.23 2.4 2
4.1.36 2.3 1.2
3.3.2 2.2 1.1
表1:TomcatとServlet/JSPバージョン対応表

Webサーバ機能

Tomcat開発者であるJames Duncan Davidsonによれば、「Tomcat」という名前には自立して生きる動物という意味も込められているそうです。その名に違わずTomcatはWeb サーバ機能も併せ持ったスタンドアロンコンテナとなっています。

サーブレット/JSPのみを使うWebアプリケーションであればTomcat(と場合によってはデータベース)を用意するだけで構築可能です。とはいえTomcatの本来の目的はサーブレット/JSPの仕様を完全に満たすことにあり、Webサーバ機能は主に開発とデバッグ用に用意されたものです。

バージョンアップとともにTomcatのWebサーバ機能も強化されていますが、C言語で書かれてプラットフォーム依存の利点も活用したWebサー バとしての歴史も長いApacheと比べて、100%JavaのアプリケーションであるTomcatが同等の性能を実現できるかどうかは疑問視されています。

他のWebサーバとの連携機能

TomcatはオープンソースのApacheをはじめ、Windows Serverに組み込まれているIIS(Internet Information Service)などのWebサーバとも連携させることができます。すなわちHTMLや画像などの静的コンテンツはより高速なWebサーバが処理し、動的 コンテンツのみTomcatに処理させることが可能です。また管理ツールの使用など、Webサーバとして便利な機能が利用できます。実際の運用においてはこの形態で使うことがほとんどでしょう。Apacheとの連携については本連載の後半で詳説します。

株式会社ビーブレイクシステムズ

千葉大学法経学部卒業。大学時代よりオープンソースに興味を持ち、オープンソース専業ベンダーのビーブレイク システムズに入社。現在に至る。また、現在は社内技術サークルの中心メンバーとして日々提案・啓蒙活動を行う。座右の銘は「自らが求めてつくらなければ、 自身が求めるものはできない」

Think ITメルマガ会員登録受付中

Think ITでは、技術情報が詰まったメールマガジン「Think IT Weekly」の配信サービスを提供しています。メルマガ会員登録を済ませれば、メルマガだけでなく、さまざまな限定特典を入手できるようになります。

Think ITメルマガ会員のサービス内容を見る

他にもこの記事が読まれています