ApacheとTomcatについて
今回はJava開発するうえで欠かせないApacheとTomcatについて
自分の復習も込めてこちらでまとめてみました。
Apacheとは
世界的に使用されるWebサーバソフトウェアの一つになります。
オープンソースの為無料で使用できるのが特徴でOSを選ばずに動作するのも
利用者が多い利用の一つとなります。
正式名称は「Apache HTTP Server」
Webサーバとは
私たちがWebサイトにアクセスしたときにWebサイトを表示させる為に必要なファイル等を
ネットワークを通じて提供する役割を持っています。
Tomcatとは
Javaで作成されたサーバサイドのプログラム(JavaServlet)を動かす時に必要で、
簡易的なWebサーバとしての機能を持っているソフトウェアになります。
正式名は「Apache Tomcat」
※サーバサイドとはインストールが不要でサーバ側でプログラムを実行できたりデータ管理や処理をすることができます。
この猫のロゴが特徴ですね
ApacheとTomcatの役割について
先ほどの説明をまとめますと
①Tomcat:JavaServletを動かす時に必要でWebサーバとしても利用できる。
②Apache:Webサーバとしての機能を持っている。
図でいうとこういう仕組みで私たちにWebページを提供していることになります。
※jsp:こちらもサーバサイドのプログラムで
HTMLの中にJavaプログラムを埋め込んで実行させる事が可能(JavaServer Pagesの略)
ここで一つ疑問になるのがTomcatがWebサーバとしても使えるのならApacheはなぜ必要かです。
TomcatはWebサーバの機能を持っているのでTomcatのみでも提供はできますが、
一つのソフトウェアでリクエストから処理実行して提供するまで掛け持ちしてしまうと処理の効率が悪くなってしまいます。
そこでWebサーバのスペシャリストであるApacheにはリクエストと提供に専念してもらい、
Tomcatはメイン機能であるリクエストを元にJavaServletを実行することで効率よくWebページが提供できるようになります。
その為、Java Servletを動かす時はApacheとTomcatを連携して両方使用するのが良いとされています。
最後に
以上がApacheとTomcatについての説明になります。
無料かつOSを選ばない事から気軽に試せる為、私も自分で環境作ってためしてみたいと思いました。