Tomcatって何ができるのですか?
Tomcatの入手方法
現在、TomcatはApacheSoftware Foundationのトッププロジェクトの1つとして、オープンソースで開発が進められています。使用許諾条件(オープンソースライセンス)はApache licenseに従い、営利、非営利を問わず、法人も個人もTomcatを無料で使用できます。
現在ダウンロード可能なTomcatのバージョンについて簡単に説明します。
Tomcat 3系
最初に一般公開された元祖Tomcatがこの「3.x」系です。バージョン3.3を最後に3系の開発は終了しています。
Tomcat 4系
3系のコードを大幅に改変し、サーブレットコンテナに新アーキテクチャ「Catalina」を搭載しました。また、Webサーバとのコネクタとして「Coyote」が採用されています。
Tomcat 5系
ガベージ・コレクションの抑制とパフォーマンスの最適化が進められ、JMXを使用した完全なサーバ監視、セッションクラスタリング機能などが強化され、商用アプリケーションや企業システムでの使用に十分耐え得るつくりに仕上がっています。またWebブラウザ上からグラフィカルに設定が行える 「Tomcat Manager」が追加されました。
Tomcat 5.5系
JRE1.5(5.0)用に開発されたバージョンです。また、デフォルトでEclipseのJDTコンパイラが内蔵されたため、JDKが必須ではなくなっています。
Tomcat 6系
メモリ使用の最適化やクラスタリング機能の改善などさらなる性能向上がはかられています。Servlet2.5/JSP2.1に対応したアノテーションや新しい式言語のUnified Expression Language、さらにクライアントからのリクエストがなくてもレスポンスを返すことができるCometといった技術が利用できるようになっています。
この記事の執筆時点(2007年7月)では最新6.0.13までが公開されています。Tomcatの最新バージョンは6系になりますが、リリース間 もないこともあり、実際の開発現場で導入されているケースはまだ少ないかと思われます。そこで、本連載ではTomcat 5.5を例にとって以降の解説を進めていきたいと思います。
では次回からは、待望のTomcatのインストール方法を解説していきます。
Tomcat以外のサーブレットコンテナ
サーブレットコンテナはオープンソースから商用プロダクトまで、複数の製品がリリースされています。ここでは、Tomcat以外のいくつかのサーブレットコンテナを紹介します。
- 「Jetty」(オープンソースプロダクト)
- WebTide(http://www.mortbay.org) によって開発されているオープンソースのアプリケーションサーバです。Apache2.0ライセンスの下に無料で提供されています。100%Javaで書 かれており、特に軽さや速さを追求して開発されています。またスタンドアロン性能にも重点が置かれており、Tomcatに比べて内蔵HTTPサーバの高性 能化がはかられています。
- 「Winstone」(オープンソースプロダクト)
- The Winstone project(http://winstone.sourceforge.net/) によるJavaで書かれたオープンソースのサーブレットコンテナです。高速で信頼できるサーブレットコンテナを目指して開発されています。サーブレット API以外の機能を持たない代わりに非常に軽量です(lite版なら166KB!)。v.0.8まではGPLでしたが、現在はLGPLとCDDLのデュア ルライセンスで公開されています。
- 「Resin」(オープンソースプロダクト)
- Caucho Technology(http://www.caucho.com/) の開発するオープンソースのアプリケーションサーバです。GPLライセンス版と、商用ライセンス版があります。パフォーマンスを非常に重視しており、公式 ページでは静的ページの読み込みにおいてApacheよりも高速であると書かれています。また、最新のJavaテクノロジへの対応が早く、Tomcatよ りも先に新しいバージョンのServlet/JSP APIに対応したこともあります。負荷分散機能であるロードバランサーや、JSPの拡張であるXTP(XML Template Pages)を備え、独自にデザインとロジックの分離をはかるなどかなり高機能なプロダクトとなっています。
- 「WebSphere Application Server」(商用プロダクト)
- IBM(http://www-06.ibm.com/jp/software/Websphere/ft/was/)によるJavaベースのアプリケーションサーバです。J2EE完全準拠を謳い、商用プロダクトではかなりのシェアを誇っています。
※対象ページ閉鎖 - 「Weblogic」(商用プロダクト)
- BEA Systems(http://www.beasys.co.jp/products/Weblogic/)によるアプリケーションサーバであり、同社の展開するビジネスアプリケーション構築環境「BEA WebLogic Platform」の基盤となるプロダクトです。アプリケーションサーバ市場は現在、上記のIBMとBEAが大きなシェアを誇っています。
※対象ページ閉鎖