ホームページ >運用・保守 >Apache >Apache の動作モードの概要

Apache の動作モードの概要

王林
王林転載
2020-06-28 17:40:383732ブラウズ

Apache の動作モードの概要

Apache の動作モード

(推奨チュートリアル: Apache の入門から習熟まで )

プレフォーク作業の原則

#別の制御プロセス (親プロセス) は、要求をリッスンして応答するために使用される子プロセスの生成を担当します。

Apache は、今後のリクエストに備えて、予備またはアイドル状態の子プロセスを常に保持しようとします。このように、クライアントはサービスを取得する前に子プロセスが生成されるのを待つ必要がありません。 Unix システムでは、親プロセスは通常、ポート 80 をバインドする root として実行されますが、Apache によって生成された子プロセスは通常、低い特権のユーザーとして実行されます。

User ディレクティブと Group ディレクティブは、子プロセスの低特権ユーザーを構成するために使用されます。子プロセスを実行するユーザーは、提供しているコンテンツに対する読み取り権限を持っている必要がありますが、サービス コンテンツ以外の他のリソースに対する権限はできるだけ少なくする必要があります。

ワーカーの仕組み

各プロセスが持つことができるスレッドの数は固定されています。サーバーは負荷に基づいてプロセスの数を増減します。

別の制御プロセス (親プロセス) が子プロセスの確立を担当します。各子プロセスは、ThreadsPerChild の数のサービス スレッドとリスニング スレッドを確立できます。リスニング スレッドは、アクセス要求をリッスンし、処理と応答のためにサービス スレッドに渡します。 Apache は常に、サービス スレッドのスペアまたはアイドル プールを維持しようとします。

このように、クライアントは、新しいスレッドや新しいプロセスが処理される前に、確立されるのを待つ必要がありません。 Unix では、ポート 80 をバインドできるようにするために、通常、親プロセスは root として起動され、その後、Apache はより低い権限を持つユーザーとして子プロセスとスレッドを作成します。 User ディレクティブと Group ディレクティブは、Apache 子プロセスの権限を構成するために使用されます。子プロセスには、提供するコンテンツへの読み取りアクセスが必要ですが、できる限り少ない権限を与える必要があります。

さらに、suexec が使用されない限り、これらの命令によって設定された権限は CGI スクリプトによって継承されます。

イベント MPM

これは、Apache の最新の動作モードです。ワーカー モードとよく似ています。違いは、キープアライブの問題を解決することです。長い接続 スレッド リソースの無駄の問題 イベント動作モードでは、これらのキープアライブ タイプのスレッドを管理するためにいくつかの特別なスレッドが使用されます 実際のリクエストが来ると、そのリクエストはサーバー スレッドに渡されます。実行が完了し、解放が許可されます。

これにより、同時実行性の高いシナリオでのリクエスト処理が強化されます。 UNIX システムの apache2.4 バージョンはこのモードを使用します。

以上がApache の動作モードの概要の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はjuejin.imで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。