通常、PHP でよく使用される Web サーバーは 2 つあります: 1. apache、2. nginx。
Apache は、世界ナンバー 1 の Web サーバー ソフトウェアです。広く使用されているほぼすべてのコンピュータ プラットフォームで実行でき、クロスプラットフォームとセキュリティ機能により、最も人気のある Web サーバー側ソフトウェアの 1 つです。
Nginx (エンジン x) は、高性能 HTTP およびリバース プロキシ Web サーバーであり、IMAP/POP3/SMTP サービスも提供します。
Apache と nginx の違いを見てみましょう:
1. 2 つの主な違いは、Apache が同期マルチプロセス モデルであることです。 connection 1 つのプロセスに対応します。nginx は非同期であり、複数の接続が 1 つのプロセスに対応します。 nginx は静的ファイルを適切に処理し、メモリ消費量が少なくなります。しかし、Apache が依然として現在の主流であり、多くの豊富な機能を備えていることには疑いの余地がないため、依然としてそれに匹敵する必要があります。もちろん、nginx がニーズを満たすと判断した場合は、nginx を使用する方が経済的です。
2. nginx の負荷容量は、Apache の負荷容量よりもはるかに高くなります。最新のサーバーもnginxを使用しています。また、nginx の設定を変更した後は、設定に問題があるかどうかをテストできません。
3. Apache が再起動され、設定が間違っていることが判明すると、クラッシュします。変更するときは、十分に注意してください。現在、多くのクラスター サイト、フロントエンド nginx アンチ同時実行性、バックエンドの Apache クラスターとの連携も良好です。
4. nginx が動的リクエストを処理するのは役に立ちません。一般に、動的リクエストを処理するには Apache が必要です。nginx は静的リクエストと逆リクエストにのみ適しています。
5. 経験上、nginx は負荷パフォーマンスに優れた非常に優れたフロントエンド サーバーであり、Webbench を使用して 10,000 の静的ファイル リクエストを簡単にシミュレートできます。 Apacheはphpなどの言語のサポートが充実しているほか、強力なサポートネットワークがある、nginxよりも開発期間が長くバグが少ない、ただしマルチコア処理負荷をサポートしていないという欠点がある. フロントエンドとバックエンドにはnginx、apacheを使用することを推奨します。大規模なWebサイトの場合は、nginxのクラスタ機能を使用することをお勧めします。
6. 静的ファイルの処理、PHP-CGIのサポート、リバースプロキシ機能、フロントエンドキャッシュ、接続維持など、多くの場合、nginxの方がAPACHEよりも優れています。 Apache PHP (プリフォーク) モードでは、PHP の処理が遅い場合、またはフロントエンドの負荷が高い場合、Apache プロセスの数が急増し、サービス妨害が発生しやすくなります。
7. Apache は処理のダイナミクスに優れています。Nginx は同時実行性が高く、CPU メモリの使用量が少ないため、書き換えが頻繁に行われる場合は Apache が最適です。
8. 一般に、パフォーマンスが必要な Web サービスには nginx を使用します。パフォーマンスは必要なく、安定性だけが必要な場合は、Apache を使用してください。
PHP 関連の知識の詳細については、PHP 中国語 Web サイト をご覧ください。
以上がphp はどのサーバーで実行されていますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。