From: Yoshiki Hayashi 圧縮機能は ほとんどのよく使われているブラウザはすべてのコンテンツの
- 圧縮は扱えません。ですから、'gzip-only-text/html' を
- 有効にした方がよいかもしれません (以下参照)
+ よく使われているブラウザでは、すべてのコンテンツに対する
+ 圧縮を扱えるわけではありません。ですから、'gzip-only-text/html'
+ ノートを 1 にして、html ファイルに対してのみ
+ 圧縮が働くようにした方がよいかもしれません (以下参照)
この値を 1 以外の値に設定した場合は無視されますので、
+ ネガティブマッチを行なうことができます。 これは Apache のドキュメンテーションに対して圧縮を有効にする設定です: これは Apache のドキュメンテーションに対して圧縮を有効にする設定です: スレッドを用いないサーバ (すなわち DEFLATE フィルタ
により実装されています。以下のディレクティブはそのディレクティブのある
コンテナ中のドキュメントを圧縮するようにします:
- SetEnv gzip-only-text/html 1
SetOutputFilter DEFLATE
<Directory "/your-server-root/manual">
@@ -35,7 +38,7 @@ SetOutputFilter DEFLATE
zlib が一度に圧縮する塊の大きさ 構文:
DeflateBufferSize value デフォルト:
DeflateBufferSize 8096コンテキスト:
- サーバ設定ファイル ステータス:
+ サーバ設定ファイル, バーチャルホスト ステータス:
Extension モジュール:
mod_deflate DeflateBufferSize ディレクティブは
@@ -43,7 +46,7 @@ SetOutputFilter DEFLATE
DeflateFilterNote ディレクティブ
説明:
ロギング用に圧縮比をメモに追加 構文:
DeflateFilterNote notename コンテキスト:
- サーバ設定ファイル ステータス:
+ サーバ設定ファイル, バーチャルホスト ステータス:
Extension モジュール:
mod_deflate DeflateFilterNote ディレクティブは
@@ -53,7 +56,7 @@ SetOutputFilter DEFLATE
zlib が圧縮に使うメモリのレベルを指定 構文:
DeflateMemLevel value デフォルト:
DeflateMemLevel 9コンテキスト:
- サーバ設定ファイル ステータス:
+ サーバ設定ファイル, バーチャルホスト ステータス:
Extension モジュール:
mod_deflate DeflateMemLevel ディレクティブは
@@ -61,10 +64,10 @@ SetOutputFilter DEFLATE
(訳注: 2 を底とする対数の値になります。
8 程度が良いでしょう。)DeflateWindowSize ディレクティブ
説明:
- Zlib の圧縮用ウィンドウの大きさ 構文:
+ Zlib の圧縮用ウィンドウの大きさ 構文:
DeflateWindowSize value デフォルト:
DeflateWindowSize 15コンテキスト:
- サーバ設定ファイル ステータス:
+ サーバ設定ファイル, バーチャルホスト ステータス:
Extension モジュール:
mod_deflate DeflateWindowSize ディレクティブは
diff --git a/docs/manual/mod/mpm_common.html.ja.jis b/docs/manual/mod/mpm_common.html.ja.jis
index 053625b46ba..8a0eaf3c2f8 100644
--- a/docs/manual/mod/mpm_common.html.ja.jis
+++ b/docs/manual/mod/mpm_common.html.ja.jis
@@ -148,35 +148,35 @@
MaxClients ディレクティブ
説明:
リクエストに応答するために作成される
子プロセスの最大個数 構文:
- MaxClients number デフォルト:
- MaxClients
- 8 (スレッドがある場合) MaxClients 256コンテキスト:
+ MaxClients number コンテキスト:
サーバ設定ファイル ステータス:
MPM モジュール:
worker, preforkMaxClients ディレクティブは、
- リクエストに応答するために作成される、子プロセスの制限数を設定します。
- スレッド処理不採用でサーバをビルドした場合は、
- この数字以上のクライアントに同時に応答することはできません。
- prefork MPM で 256 クライアントを越える設定にするのならば、
+ 応答することのできる同時リクエスト数を設定します。
+ MaxClients 制限数を越えるコネクションは通常、
+ ListenBacklog
+ ディレクティブで設定した数までキューに入ります。
+ 他のリクエストの最後まで達して子プロセスが空くと、
+ 次のコネクションに応答します。prefork)
+ では、MaxClients
+ は、リクエストに応答するために起動される
+ 子プロセスの最大数となります。
+ デフォルト値は 256 で、これを増加させたい場合は、
ServerLimit
- ディレクティブを使用しなければなりません。
- worker MPM で 1024 クライアントを越える設定にするのならば、
- ServerLimit
- ディレクティブと
- ThreadLimit
- ディレクティブを使用しなければなりません。
MaxClients の制限を越えたコネクションは、
- 通常は ListenBacklog
- ディレクティブに基づいた数までキューされます。
- 子プロセスが他のリクエストの最後まで行って解放されたら、
- キューに入ったこのコネクションに対して応答が行われます。
サーバがスレッド処理採用でコンパイルされた場合は、 - 応答可能な同時リクエスト数の最大数は、このディレクティブの値を +
スレッドを用いるサーバ (すなわち worker)
+ では、MaxClients
+ は、クライアントに応答できるスレッドの総数を制限します。
+ デフォルト値は
ThreadsPerChild
- 倍して得られます。
MaxClients
+ を 16 プロセス以上必要な値まで増加させたい場合は、
+ ServerLimit
+ も増加させる必要があります。
|
リクエストに応答するスレッド数の最小値です。 異なる MPM ではそれぞれ、 - このディレクティブは異なる取り扱われ方をします。
+ このディレクティブは異なる取り扱われ方をします。perchild では、
デフォルトは MinSpareThreads 5 で、
@@ -373,7 +373,7 @@
は再起動中に修正することができます。
このディレクティブを使用する際は特に注意してください。
- ServerLimit が必要以上に大きな値に
+ ServerLimit が必要以上に大きな値に
設定された場合は、余計な未使用共有メモリが割り当てられます。
ServerLimit と
MaxClients
diff --git a/docs/manual/mod/prefork.html.ja.jis b/docs/manual/mod/prefork.html.ja.jis
index d4480e986fc..e7cc6926ea0 100644
--- a/docs/manual/mod/prefork.html.ja.jis
+++ b/docs/manual/mod/prefork.html.ja.jis
@@ -23,7 +23,7 @@
全プロセスに十分な物理メモリが確実に行き渡る程度には小さい値にする、
ということです。
参照
参照
一つのコントロールプロセスが、 コネクションに対して listen して、しかるべき時に応答する diff --git a/docs/manual/mod/worker.html.ja.jis b/docs/manual/mod/worker.html.ja.jis index 6f79cecb9e9..d997fe665db 100644 --- a/docs/manual/mod/worker.html.ja.jis +++ b/docs/manual/mod/worker.html.ja.jis @@ -18,11 +18,13 @@
この MPM を制御するのに使われる最も重要なディレクティブは、
ThreadsPerChild と
MaxClients です。
- これらのディレクティブの値を操作することで、
- サーバの扱うことのできる全同時コネクション数を定義します。
ThreadsPerChild は
+ 各子プロセスで用意されるスレッド数を制御して、
+ MaxClients は
+ 起動されるスレッドの総数の最大値を制限します。
参照
プロセスは決まった数のスレッドを持ちます。 負荷への適応はプロセスの数を増減により対応します。
@@ -39,19 +41,37 @@ このようにして、クライアントはリクエストの応答が得られるようになるために 新しいスレッドやプロセスが生成されるのを 待たなくてもよいようになっています。 + 起動初期時のプロセス総数は、 +StartServers
+ ディレクティブで設定されます。その後の稼働中に、
Apache は全プロセスのアイドルスレッドの合計数を見積もって、
MinSpareThreads と
MaxSpareThreads
で指定された範囲の中にこの数が収まるように fork したり
kill したりします。この操作は非常に自律的なので、
- これらのディレクティブをデフォルト値から変更する必要は
+ これらのディレクティブをデフォルト値から変更する必要は
めったにないでしょう。
- 同時に応答することのできるクライアント数の最大数は、
- 生成されるサーバプロセスの最大数
- (MaxClients)
- と、個々のプロセスで作られるスレッド数
- (ThreadsPerChild)
- の積になります。
+ 同時に応答することのできるクライアント数の最大数
+ (つまり全プロセス中の総スレッド数の最大値) は
+ MaxClients
+ ディレクティブで決定されていて、
+ 一方で起動することのできるプロセス数の最大値は
+ ServerLimit
+ ディレクティブで設定されています。
+ ServerLimit と
+ ThreadsPerChild との積は、
+ MaxClients
+ と等しいかそれより大きい必要があります。
+
+ worker MPM の典型的なプロセス・スレッド制御の
+ 設定では、次のようになります。
StartServers 2 +MaxClients 150 +MinSpareThreads 25 +MaxSpareThreads 75 +ThreadsPerChild 25 +ServerLimit 16
通常 Unix では親プロセスは 80 番ポートにバインドするために root で起動されますが、子プロセスやスレッドは