apacheとnginxはどちらもオープンソースのウェブサーバー(httpサーバー)で、静的ファイルや動的ページに使用することができます。この構成では、ユーザーリクエストが正しい場所にルーティングされるURLを特定することが求められます。 apacheとnginxの主な違いは、トラフィックと接続を処理する方法です。apacheではクライアントからのリクエストをmultiprocessing module(mpm)で処理し、nginxではコネクションとクライアントをイベントループに入れることで非同期に処理します。nginxは、apacheに比べてCPUとメモリの使用量が安定しています。
主な相違点
Apache と Nginx はどちらもオープンソースのウェブサーバー、つまり HTTP サーバーで、静的ファイルや動的ページに使用することができます。この構成では、ユーザーリクエストが正しい場所にルーティングされるURLを特定することが求められます。ApacheとNginxの主な違いは、トラフィックと接続を処理する方法です。Apache では、クライアントのリクエストを処理するためにマルチプロセッシングモジュール(mpm)が使用されますが、Nginx では、コネクションとクライアントをイベントループに入れることで非同期に処理されます。Nginx では、高負荷時でも Apache と比較して CPU とメモリの使用量が一定に保たれています。
アパッチ(apache)は何ですか?
Apache はウェブサーバーとして設計されています。 Apache は静的コンテンツと動的コンテンツに言語プロセッサを組み込んだ伝統的なファイルベースのアプローチを使用します。 Apache は隠しファイル .htaccess のディレクティブを計算・解釈してディレクトリ単位で追加設定を行うことができます。Apache では、モジュールは動的にロードされ、アンロードされます。
株式会社エヌジンクス(以下、エヌジンクス)は何ですか?
Nginx はウェブサーバおよびプロキシサーバとして設計されており、動的コンテンツをネイティブに処理する機能はありません。Nginx はディレクティブを評価・解釈してディレクトリ単位で追加設定することはできません。 nginx はより速くリクエストを処理することができます。
主な相違点
- Nginx の CPU とメモリの使用量は、Apache と比較して、高負荷時でも安定しています。
- Apache は、静的コンテンツと動的コンテンツに対して、言語プロセッサを組み込んだ従来のファイルベースのアプローチを採用していますが、Nginx は動的コンテンツに対するネイティブな処理能力が不足しています。
- Apache では、隠しファイルである .htaccess のディレクティブを計算・解釈することでディレクトリ単位での追加設定が可能ですが、Nginx ではディレクティブを計算・解釈することでディレクトリ単位での追加設定はできません。
- Apache は .htaccess を解釈しますが、Nginx は .htaccess を解釈しません。
- Nginx は Apache よりも高速にリクエストを処理します。
- Nginx は、ディレクトリレベルの設定アクセスを個々のユーザに分散させないため、Apache と比較して高いセキュリティレベルを誇ります。
- Apacheはウェブサーバーとして、Nginxはウェブサーバーとプロキシサーバーとして設計されています。
- Apacheでは、モジュールは動的にロード、アンロードされますが、Nginxでは、モジュールは動的にロードされません。
- Nignxでは、モジュールは選択によって取得され、コアソフトウェアにコンパイルされますが、Apacheでは、それらは動的なものです。