Web サイトを構成するときは、システム リソースを最大限に活用し、システムの可能性をすべて引き出し、Web サイトの速度を最大化する必要があります。 Apache は、ユーザーのブラウジングと Web サイト データの間の中間ブリッジです。ただし、ここでは、大したことはしませんが、慎重に対処すれば、いくつかの設定はすぐに結果が現れます。
1. Apache をインストールするときは、MPM を正しく選択する必要があります
Apache の最高のパフォーマンスが必要な場合, したがって、最初のステップは適切な MPM を選択することです。 (推奨学習: Apache Server )
Apacheには3つのMPMがあります。
このうちイベント MPM は、継続的な接続が多数発生する状況に適しています。 KeepAlive の利点は、同じ TCP 接続で複数のリクエストに応答できることです。これにより、多数の画像を含む HTML ドキュメントを 50% 高速化できます。 Apahce 設定ファイル httpd.conf で KeepAlive を On に設定して、KeepAlive を開始します。
prefork は非スレッド MPM です。特徴としては、それほど速くはないものの、非常に安定しているということです。各リクエストが分離されるため、1 つのリクエストが失敗しても、他のリクエストには影響しません。プリフォークを使用する場合の最も重要なパラメータは MaxClients です。
MaxClients 値は、アクセスのピーク時に適切なパフォーマンスを発揮できるように十分な大きさにする必要がありますが、同時に、Apache が必要とするメモリが物理メモリのサイズを超えるほど大きすぎてもいけません。
Worker は、Apache2 バージョンで新しく開発された MPM で、プリフォークよりもはるかに高速です。また、アクセス処理にマルチスレッドを使用するため、比較的多くのリクエストを処理でき、プロセスベースのサーバーに比べてシステムリソースの使用量が少なくなります。 Apache 2 の主な用途はワーカーです。
Worker には、ThreadsPerChild と MaxClients という 2 つの重要な構成パラメータがあります。 ThreadsPerChild は、子プロセスごとに作成できるスレッドの数を制御するために使用され、MaxClients は、作成できるスレッドの合計数を制御するために使用されます。
それでは、これら 3 つの MPM をどのように選択すればよいのでしょうか?
より優れたスケーラビリティが必要な場合は、ワーカーまたはイベント (スレッド MPM であるため) を選択できます。より優れた安定性と互換性が必要な場合 (古いソフトウェアへの適応など)、プリフォークを選択できます。 。 「プリフォークからワーカーへ: ubuntu Apache 動作モードの変更」
それでもニーズを評価できず、どの MPM を選択すべきかわからない場合は、ワーカーを使用することをお勧めします。
2. Apache 設定の最適化
Ubuntu では、Apache の主な設定ファイルは /etc/apache2/apache.conf であり、次の設定はこのファイルに対するものです。
(1) DNS クエリをオフにする
HostnameLookups はデフォルトでオフに設定されています。必ずこの設定を維持してください。クライアント DNS をカウントする必要がある場合は、サードパーティ ソフトウェアを使用してカウントすることができます。
(2) MaxClients の最適化
Apache2 が起動すると、いくつかのプロセス (構成ファイルの StartServer によって設定された数) が作成され、MaxClients の最大数が維持されます。 ; この数を超える接続リクエストはすべてキューに入れられます。
以上がApache サーバーのパフォーマンスを最適化する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。