mod_mem_cache - Apache HTTP サーバ

Apache Server 2.0

<-

Apache モジュール mod_mem_cache

説明:URI をキーにしたコンテンツのキャッシュ
ステータス:Experimental
モジュール識別子:mem_cache_module
ソースファイル:mod_mem_cache.c

概要

これは実験的なモジュールです。文書もまだ開発中です...

このモジュールは mod_cache必要とします。 これは mod_cache のサポートモジュールとして 動作し、メモリを使用したストレージ管理機構を提供します。 mod_mem_cache は二つのモードのどちらかで動作するように 設定できます: ファイル記述子のキャッシュかヒープ中のオブジェクトの キャッシュです。ローカルで生成されたコンテンツに対してキャッシュするときや、 mod_proxy を使って ProxyPass (つまりリバースプロキシ向け) に設定したときのバックエンドサーバのコンテンツに対して キャッシュをするときに、たいへん効果的です。

コンテンツのキャッシュへの保存と取得は URI に基づいたキーが使われます。 アクセス保護のかけられているコンテンツはキャッシュされません。

top

MCacheMaxObjectCount ディレクティブ

説明:キャッシュに保管されるオブジェクトの最大数
構文:MCacheMaxObjectCount value
デフォルト:MCacheMaxObjectCount 1009
コンテキスト:サーバ設定ファイル
ステータス:Experimental
モジュール:mod_mem_cache

MCacheMaxObjectCount ディレクティブは キャッシュされるオブジェクトの最大数を指定します。 この値はハッシュテーブルを作成するときに使われます。 新しいオブジェクトを挿入するときに、オブジェクトの最大数に 達してしまっているとき、新しいオブジェクトをキャッシュできるように、 オブジェクトを一つ消去します。オブジェクトは MCacheRemovalAlgorithm で指定されたアルゴリズムに従って削除されます。

MCacheMaxObjectCount 13001

top

MCacheMaxObjectSize ディレクティブ

説明:キャッシュに保管できるドキュメントの最大サイズ (バイト)
構文:MCacheMaxObjectSize bytes
デフォルト:MCacheMaxObjectSize 10000
コンテキスト:サーバ設定ファイル
ステータス:Experimental
モジュール:mod_mem_cache

MCacheMaxObjectSize はドキュメントを キャッシュするかどうかを判定する、最大のサイズをバイト数で設定します。

MCacheMaxObjectSize 6400000

MCacheMaxObjectSize の値は MCacheMinObjectSize で指定した値よりも大きくなければなりません。

top

MCacheMaxStreamingBuffer ディレクティブ

説明:ストリームされている応答をキャッシュ不能と決定するまでに メモリにバッファする最大量
構文:MCacheMaxStreamingBuffer size_in_bytes
デフォルト:MCacheMaxStreamingBuffer of 100000 か MCacheMaxObjectSize の少い方
コンテキスト:サーバ設定ファイル
ステータス:Experimental
モジュール:mod_mem_cache

MCacheMaxStreamingBuffer ディレクティブは、 サイズが大きすぎてキャッシュできないと判断するまでの、 ストリーム応答のバッファのための最大バイト数を指定します。 ストリーム応答とは、コンテンツの全体がすぐには得られず、 Content-Length がわからない応答を指します。 ストリーム応答を行なうようなものにはプロキシされた応答や、 CGI スクリプトの出力などがあります。デフォルトではストリームの応答は Content-Length がない限りキャッシュされません。 このような動作になっている理由は、結局キャッシュに収まりきらないと 判断することになってしまうような、サイズの大きな応答のバッファリングに、 大量のメモリが消費されるのを避けるためです。 MCacheMaxStreamingBuffer ディレクティブを使うと、 Content-Length を含まない応答に対して指定された最大量まで バッファするようにできます。バッファを使い切ると、バッファ中の コンテンツは捨てられ、キャッシュ動作を中止します。

注:

MCacheMaxStreamingBuffer に非零の値を 使っても、クライアントへの応答の転送に特に遅延は発生しません。 mod_mem_cache はストリームコンテンツの断片を バッファにコピーした後、即座に、その部分をクライアントへの配送の 次段の出力フィルタに送ります。

# Enable caching of streamed responses up to 64KB:
MCacheMaxStreamingBuffer 65536

top

MCacheMinObjectSize ディレクティブ

説明:キャッシュに保管されるドキュメントの最小サイズ (バイト)
構文:MCacheMinObjectSize bytes
デフォルト:MCacheMinObjectSize 0
コンテキスト:サーバ設定ファイル
ステータス:Experimental
モジュール:mod_mem_cache

MCacheMinObjectSize ディレクティブは、ドキュメントを キャッシュするかどうかを判定する、最小のサイズをバイト数で設定します。

MCacheMinObjectSize 10000

top

MCacheRemovalAlgorithm ディレクティブ

説明:キャッシュから削除するドキュメントを選ぶためのアルゴリズム
構文:MCacheRemovalAlgorithm LRU|GDSF
デフォルト:MCacheRemovalAlgorithm GDSF
コンテキスト:サーバ設定ファイル
ステータス:Experimental
モジュール:mod_mem_cache

MCacheRemovalAlgorithm ディレクティブは、 キャッシュから削除するドキュメントを選択するためのアルゴリズムを 指定します。選択肢は二つあります:

LRU (Least Recently Used)
LRU 一番長くアクセスされていないドキュメントを削除します。
GDSF (GreadyDual-Size)
GDSF はキャッシュミスのコストとドキュメントのサイズをもとに、 ドキュメントのキャッシュに対して優先度をつけます。 優先度の一番低いドキュメントが最初に削除されます。

MCacheRemovalAlgorithm GDSF
MCacheRemovalAlgorithm LRU

top

MCacheSize ディレクティブ

説明:キャッシュに使われるメモリの最大量をキロバイト単位で指定
構文:MCacheSize KBytes
デフォルト:MCacheSize 100
コンテキスト:サーバ設定ファイル
ステータス:Experimental
モジュール:mod_mem_cache

MCacheSize ディレクティブはキャッシュに 使われるメモリの大きさをキロバイト (1024 バイト単位) で設定します。 新しいオブジェクトをキャッシュに挿入することになり、オブジェクトの サイズが残りのメモリより大きい場合は、その新しいオブジェクトの挿入が 可能になるまで、古いオブジェクトが削除されていきます。 オブジェクトは MCacheRemovalAlgorithm で指定したアルゴリズムに従って削除されます。

MCacheSize 700000

MCacheSize の値は MCacheMaxObjectSize ディレクティブで指定した値より 大きくなければなりません。