2.4. Zend_Cache のバックエンド
前のページ | 第2章 Zend_Cache | 次のページ

## 2.4. Zend_Cache のバックエンド

### 2.4.1. Zend_Cache_Backend_File

このバックエンドは、キャッシュレコードを (指定したディレクトリの) ファイルに保存します。

使用可能なオプションは次のとおりです。

表 2.6. 使用可能なオプション

オプション | データ型 | デフォルト値 | 説明
--- | --- | --- | ---
`cacheDir` | `string` | `'/tmp/'` | キャッシュファイルを書き込むディレクトリ。
`fileLocking` | `boolean` | `true` | ファイルロックを有効/無効にします。 不慮の事故でキャッシュが破壊されることを防げますが、 マルチスレッドなウェブサーバ環境や NFS ファイルシステム上では役に立ちません。
`readControl` | `boolean` | `true` | 読み込み制御を有効/無効にします。有効にすると キャッシュファイルに制御キーが埋め込まれます。 キャッシュの読み込み後、計算した結果とキャッシュのキーを比較します。
`readControlType` | `string` | `'crc32'` | 読み込み制御の方式 (読み込み制御が有効な場合にのみ使用します)。 使用可能な値は 'md5' (一番安全だが、最も遅い)、 'crc32' (安全性には劣るが、より高速。悪くない選択肢です)、 'strlen' (最も高速。長さのみをチェックします) のいずれかです。
`hashedDirectoryLevel` | `int` | `0` | ディレクトリ構造のレベルを指定します。0 は "ディレクトリ階層を作らない"、 1 は "一段階のサブディレクトリを作る"、2 は "二段階の……" を意味します。 何千ものキャッシュファイルを使用する場合にのみ、 このオプションによる高速化を実感できるでしょう。 適切な設定値を決めるには、実際にベンチマークを取得するしかありません。 たいていの場合は 1 または 2 でよいでしょう。
`hashedDirectoryUmask` | `int` | `0700` | ディレクトリ構造の umask を指定します。

### 2.4.2. Zend_Cache_Backend_Sqlite

このバックエンドは、キャッシュレコードを SQLite データベースに保存します。

使用可能なオプションは次のとおりです。

表 2.7. 使用可能なオプション

オプション | データ型 | デフォルト値 | 説明
--- | --- | --- | ---
`cacheDBCompletePath (mandatory)` | `string` | `null` | SQLite データベースへの (ファイル名も含めた) フルパス。

### 2.4.3. Zend_Cache_Backend_Memcached

このバックエンドは、キャッシュレコードを memcached サーバに保存します。 memcached は、 高性能な分散メモリオブジェクトキャッシュシステムです。このバックエンドを使用するには、 memcached デーモンおよび memcache PECL 拡張モジュール が必要です。

注意: このバックエンドでは、今のところ "タグ" がサポートされていません。 また、引数 "doNotTestCacheValidity=true" もサポートされていません。

使用可能なオプションは次のとおりです。

表 2.8. 使用可能なオプション

オプション | データ型 | デフォルト値 | 説明
--- | --- | --- | ---
`servers` | `array` | `array(array('host' => 'localhost','port' => 11211, 'persistent' => true))` | memcached サーバの配列です。各 memcached サーバの情報は、 以下のような連想配列で指定します。 'host' => (string) : memcached サーバのサーバ名 'port' => (int) : memcached サーバのポート番号 'persistent' => (bool) : この memcached サーバに対して持続的な接続を使用するかどうか
`compression` | `boolean` | `flase` | その場での圧縮処理を行いたい場合に true を指定します。

### 2.4.4. Zend_Cache_Backend_APC

このバックエンドは、キャッシュレコードを共有メモリに保存する際に APC (Alternative PHP Cache) 拡張モジュールを使用します (当然、このバックエンドを使用するにはこの拡張モジュールが必要です)。

注意: このバックエンドでは、今のところ "タグ" がサポートされていません。 また、引数 "doNotTestCacheValidity=true" もサポートされていません。

このバックエンドではオプションを使用しません。

前のページ | 上に戻る | 次のページ
2.3. Zend_Cache のフロントエンド | ホーム | 第3章 Zend_Config