この記事では、主に tomcat、nginx、および Apache HTTP Server プロジェクトの違いを紹介します。これには特定の参考値があります。今、あなたに共有します。必要な友人はそれを参照できます。
Apache とは、次のことを指します。 Apache Software Foundation のプロジェクト - Apache HTTP Server Project; Nginx もオープンソースの HTTP サーバー ソフトウェアです (もちろんメール プロキシ サーバーや一般的な TCP プロキシ サーバーとしても使用できます)。
HTTP サーバーは本質的にアプリケーションです。通常、サーバー上で実行され、サーバーの IP アドレスをバインドし、特定の TCP ポートをリッスンして HTTP リクエストを受信して処理します。そのため、クライアント (通常は IE、Firefox、Chrome) HTTPプロトコルを介してサーバー上のWebページ(HTML形式)、ドキュメント(PDF形式)、音声(MP4形式)、ビデオ(MOV形式)などのリソースを取得できます。
次の図は、このプロセスを示しています。
Apache HTTP Server と Nginx だけでなく、簡単な HTTP サーバーの利便性も、ほとんどのプログラミング言語に含まれるクラス ライブラリに実装されています。開発者は次のメソッドを使用します。 HttpServer ( Java HTTP Server) Python SimpleHTTPServer は、これらのライブラリを使用して HTTP サーバーを非常に簡単に実行でき、IP アドレスをバインドし、TCP ポートでリッスンすることで HTTP サービスを提供できます。
Apache Tomcat は、Apache Foundation の別のプロジェクトであり、Apache HTTP Server と比較して、Tomcat はリソースを動的に生成してクライアントに返すことができます。 Apache HTTP サーバーと Nginx は両方とも、HTTP プロトコルを通じて特定のテキスト ファイルの内容をクライアントに返すことができますが、このテキスト ファイルの内容は固定されています。つまり、いつ誰がアクセスしても、取得される内容は固定されています。完全に同様に、このようなリソースを 静的リソース と呼びます。
動的リソースはその逆で、異なる時間に異なるクライアントからアクセスされた場合に取得されるコンテンツは異なります。例: 現在時刻を含むページと現在の IP アドレスを表示するページ。Apache HTTP Server と Nginx 自体は、動的ページですが、他のモジュール (コンテンツを動的に生成するシェル、PHP、Python スクリプトなど) を通じてサポートできます。 Java プログラムを使用してリソース コンテンツを動的に生成する場合、このタイプの HTTP サーバーを使用してそれを行うことは困難です。 Java Servlet テクノロジと派生 Java Server Pages テクノロジを使用すると、Java プログラムは HTTP 要求を処理し、コンテンツを返すことができます (プログラムによって動的に制御されます)。Tomcat は、Servlet/JSP アプリケーションの実行をサポートするコンテナ (コンテナ) です。
上記がこの記事の全内容です。皆様の学習に少しでもお役に立てれば幸いです。その他の関連コンテンツについては、PHP 中国語 Web サイトをご覧ください。
関連する推奨事項:
nginx ルートとエイリアスの違いについて以上がTomcat と nginx の違い、Apache HTTP サーバー プロジェクトの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。