2011-08-04 5 views

答えて

4

起動時にAPCがキャッシュデータをロードするディレクトリを指定します。大規模なセットアップ(100以上のサーバと考える)では、これによりPHPファイルのコンパイルを忘れることができます。 APCやPHPコンパイラ、または他の種類のデフォルトデータよりも賢明だった場合は、独自のコンパイルを提供することもできます。

別にthis one occurenceから、それは未使用です。上記の問題のいずれかがある場合を除いて、それを設定しないでください。このオプションを書いている時点では

1

があるため、あなたが適切にキャッシュをプリロードすることはできませんAPCのソースコード のバグの壊れています。

static int apc_load_data(const char *data_file TSRMLS_DC)」と呼ばれる方法でインサイド「main_apc.c」、保存する必要のある値のキーの長さは、次の行で決定されます。

key_len = strlen(key); 

私が正しいだ場合にのみですヌルターミネータなしの文字列自体の長さ しかし、 "_apc_store"は、ターミネータを含むキー文字列の長さが必要なようです。 私は上記の行を変更した場合:

key_len = strlen(key)+1; 

予想通りその後、プリロード機能が動作します。

また、エントリがapc.phpユーザキャッシュを見たときに1つの文字が欠落していることに気付くことができます。しかし、それを鍵として使用しようとすると、APCはその内容を返さないので、回避策としては機能しません。

関連する問題