ホームページ >php教程 >PHP开发 >Apache パフォーマンスの最適化 (1)

Apache パフォーマンスの最適化 (1)

黄舟
黄舟オリジナル
2016-12-21 11:23:061327ブラウズ

サーバーモデル:

モデル: DELL1750

cpu: Intel Xeon(TM) CPU 3.06GHz

メモリ: 1G

ハードドライブ: 70/70/70

オペレーティングシステム: FreeBSD 4.8p-STABLE

主な対象アプリケーション要件:

ピーク: 800 回/秒

1 日あたり 1000 万 PV トラフィック。

各ファイルの最大サイズは0.5kバイトで、すべてHTMLファイルです。

メモリファイルシステムを使用してください。

目次:

モジュールのアイデアの簡単な紹介

特定のモジュールのカスタマイズ

パフォーマンス MPM に影響を与える主要な指標

その他の Apache パフォーマンス最適化構成

簡単なパフォーマンス テスト

簡単な紹介モジュール化の考え方:

UNIX システムでは、Apache はマルチプロセス モデルを採用します。マルチプロセス モデルでは、その子プロセスが顧客のリクエストを処理し、システムが過負荷になると、親プロセスがさらにいくつかの子プロセスを開始します。プロセスは複数の子プロセスを強制終了します。子プロセスの数は「MinSpareServers」と「MaxSpareServers」の間です。また、各子プロセスによって処理されるリクエストの数も制限され、すべてのプロセスのステータスが制限されます。各子プロセスのステータスは小さなメモリに記録され、通常はこのメモリの読み取りと書き込みのみを行うため、Apache 2.0 には同期メカニズムがありません。 Unix スレッド、マルチプロトコル サポート、新しいビルド システム、非 Unix プラットフォームのサポート強化、IPv6 サポート、新しい Apache API、フィルタ、多言語エラー応答、ネイティブ Windows NT Unicode サポートなど、多くのコアの改善と新機能を追加しました。 、よりシンプルな構成、アップグレードされた正規表現ライブラリなど。もちろん、多くのモジュールに対する重要な改善も含まれており、いくつかの新しいモジュールも追加されています。

Apache はモジュール型サーバーであり、コア サーバーには最もよく使用されるモジュールのみが含まれており、拡張機能は他のモジュールによって提供されます。セットアップ中に、どのモジュールを含める必要があるかを指定する必要があります。参照用のモジュール リストがドキュメントにあります。ステータスが「Base」のモジュールはデフォルトでコア サーバーに含まれます。モジュール (mod_userdir など) を含める必要がない場合は、明示的に無効にする必要があります。他のステータスのモジュール (mod_expires など) も、コア サーバーに含めるために明示的に有効にする必要があります。

Apache にはモジュールを使用する 2 つの方法があります。1 つはモジュールをコアに永続的に組み込む方法で、オペレーティング システムが動的共有オブジェクト (DSO) をサポートしており、autoconf によって検出できる場合は、モジュールを動的にコンパイルすることもできます。 DSO モジュールのストレージはコアから独立しており、mod_so モジュールによって提供されるランタイム構成ディレクティブを使用してコアに含めたり除外したりできます。コンパイルに動的モジュールが含まれている場合、mod_so モジュールは自動的にコアに組み込まれます。実際に動的モジュールをコンパイルせずにコアが DSO をロードできるようにしたい場合は、 --enable-so を明示的に指定する必要があります。

上記は Apache パフォーマンスの最適化 (1) の内容です。さらに関連する内容については、PHP 中国語 Web サイト (www.php.cn) に注目してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。