Apache HTTPサーバーとApache Tomcatの機能面での違いは何ですか?
TomcatはJavaで書かれており、HTTPサーバーはCで書かれていることを私は知っていますが、それ以外は、それらがどのように区別されるのかを私は知りません。それらは異なる機能を持っていますか?
Apache Tomcatは、JavaサーブレットとJSPのデプロイに使用されます。そのため、あなたのJavaプロジェクトでWAR(Web ARchiveの略)ファイルを構築し、それをTomcatのdeployディレクトリにドロップするだけです。
したがって、基本的にApacheはHTTPを提供するHTTPサーバーです。 Tomcatは、Javaテクノロジを提供するサーブレットおよびJSPサーバーです。
Tomcatはサーブレットコンテナです。最後に、サーブレットはJavaクラスです。 JSPファイル(これはPHPに類似しており、より古いASPファイル)はJavaコード(HttpServlet)に生成され、それがサーバーによって.classファイルにコンパイルされてJava仮想マシンによって実行されます。
httpd
Webサーバー製品。 - Basil BourqueTomcat = ( Web Server + Servlet container + JSP environment )
。 Tomcatを実行すると、Webサーバーはデフォルトでオンになります。startup.sh
着信接続(HTTP呼び出し)をポート8080でlistenしているスクリプト。 Tomcatは純粋なJavaであり、独自のWebサーバー実装(Coyote)を備えています。のApache HTTPサーバー対照的に、(AHS)は、ネイティブC / C ++コードを使用して、Webサーバーの完全に独立した実装を持っています。 AHSは非常に柔軟で強力ですが、やり過ぎることがよくあります。 Tomcat自身のウェブサーバーは非常にうまく機能します。本当に必要な場合にのみAHSを使用してください。 - Basil Bourque
上記の良い答えに加えて、Tomcatには独自のHTTPサーバーが組み込まれており、静的コンテンツの提供においても完全に機能すると言えると思います。 Java仮想マシンの設定によっては、mod_proxyやmod_jkなど、Apacheの従来のコネクタを通過するよりも実際には性能が優れている場合があります。
つまり、完全に最適化されたTomcatサーバーは静的ファイルを高速に提供する必要があり、静的コンテンツに加えてJavaサーブレット、JSP、およびColdFusionファイルがある場合、tomcatはそれ自体が優れた仕事をすることがわかります。
mod_rewrite
エンジンと条件付き環境インジェクション。mod_proxy
基本的な負荷分散を提供します(そしてmod_jkと組み合わせて、負荷分散されたTomcatインスタンス間で基本的なスティッキーセッション/共有状態を提供します)。 - cowbert
Tomcatは主にアプリケーションサーバーであり、サーバー上のカスタムビルドされたJavaサーブレットまたはJSPファイルへの要求を処理します。通常、Apache HTTPサーバーと組み合わせて使用されます(少なくとも私の経験では)。手動で着信要求を処理するためにそれを使用してください。
HTTPサーバーは、それ自体で、静的コンテンツ、HTMLファイル、画像などを提供するのに最適です。
Tomcat is primarily an application server
ステートメント。 - Rachel
Apacheサーバーは、単純なhttpリクエストを処理できるhttpサーバーです。ここで、tomcatサーバーは、実際には、javaサーブレット要求を処理できるサーブレットコンテナです。
Webサーバ[apache]はWebクライアント(Webブラウザ)の要求を処理してサーブレットコンテナ[tomcat]に転送し、コンテナ処理は要求を処理してWebサーバによって転送された応答をWebクライアント[ブラウザ]に送信します。
また、より明確にするためにこのリンクをチェックすることができます -
https://sites.google.com/site/sureshdevang/servlet-architecture
また、さらなる調査のためにこの答えをチェックしてください: -
Webアプリケーションの作成にJavaテクノロジ(サーブレット/ JSP)を使用している場合は、おそらくApache Tomcatを使用します。 ただし、Perl、PHP、またはrubyなどの他のテクノロジを使用している場合は、Apache HTTP Serverを使用するほうが簡単です。
ApacheはHTTP Webサーバーです。TomcatはサーブレットとJSPのWebサーバーでもあります。 さらに、ApacheはApache Tomcatよりもリアルタイムで好まれています。
ApacheはHTTPとして機能するHTTP Webサーバですが、Apache TomcatはJavaサーブレットコンテナです。IT機能JavaサーブレットおよびJSPページを実行するようにカスタマイズされたWebサーバと同じです。