[ 通常表示 ]  [ 簡易表示 ]  [ シンプル表示 ]

「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典イメージぴよ画像「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典

「Tomcat」と「Apache」の違い

スポンサーリンク

予備知識


用語意味
Java「一度書けば、どこでも動く」の理念で作られたプログラミング言語で「オブジェクト指向」という言葉を流行らせた奴
WebサーバホームページWebサービスを置くサーバサービスを提供するコンピュータ)
Java ServletWebサーバ上でお仕事をするJavaのプログラム
サーブレットコンテナJava Servletを動かすときに必要なソフト

それぞれの用語の意味


用語意味
Tomcatサーブレットコンテナ(Java Servletを動かすときに必要なソフト)の一つ
Apache全世界的に普及しているWebサーバのソフト

似ているところ


どちらも、Webサーバとしての機能を持っています。



違うところ


違うところというか、本来の役割は全然別物です。
TomcatはJava Servletを動かすときに必要なソフトです。
一方のApacheは、コンピュータをWebサーバとして動かすときに必要なソフトです。

ただし、Tomcatは、作ったJava Servletの動作確認ができるように(簡易的な)Webサーバとしての機能も持っています。
そのため、何が違うのかで悩む人もいるようですね。

Tomcatさんは、あくまでサーブレットコンテナとしてのスペシャリストです。
Webサーバとしては「まぁ、やれないことはないよ」レベルです。
それに対してApacheさんは「Webサーバとしては俺の右に出るものはねーぞ!」なスペシャリストです。
それぞれの本来のお仕事は

Tomcat:サーブレットコンテナ
Apache:Webサーバ


になります。
これがApacheとTomcatの違いです。


個人的な使い分け


Webサーバの機能が必要な場合はApacheを使います。
Tomcatを使う場合は、ApacheとTomcatを連携させます。
Tomcatは、あくまでサーブレットコンテナの位置付けです。


備考


一般的に、Java Servletを本格的に動かす環境を作るときは、ApacheとTomcatを連携させて両方使います。
Tomcat単体でも何とかならないことはありませんが、あえてApacheさんに出張ってもらうのです。Webサーバとしての機能はWebサーバのスペシャリストであるApacheさんに頑張ってもらいます。サーブレットコンテナとしてのお仕事はTomcatさんが行います。

一人で不得意分野も掛け持ちで行うよりは、得意分野を分担して二人で行った方が、良い感じになりそうですよね?
それがApacheとTomcatを連携させる理由です。


スポンサーリンク