4.4. Zend_Cache Backends
Zurück | Kapitel 4. Zend_Cache | Weiter

## 4.4. Zend_Cache Backends

### 4.4.1. Zend_Cache_Backend_File

Dieses Backend speichert Cache Datensätze in Dateien (in einem gewählten Verzeichnis).

Mögliche Optionen sind :

Tabelle 4.6. Mögliche Optionen

Option | Daten Typ | Standardwert | Beschreibung
--- | --- | --- | ---
`cacheDir` | `string` | `'/tmp/'` | Verzeichnis, in dem die Cache Dateien gespeichert werden
`fileLocking` | `boolean` | `true` | Ein- / Ausschalten von fileLocking: kann die Beschädigung des Caches unter schlechten Bedingungen verhindern, aber es hilft nicht bei Multithreaded Webservern oder bei NFS Filesystemen...
`readControl` | `boolean` | `true` | Ein- / Ausschalten von readControl: eingeschaltet wird ein Kontrollschlüssel im Cache File inkludiert und dieser Schlüssel wird mit dem Schlüssel verglichen, der nach dem Lesen berechnet wird.
`readControlType` | `string` | `'crc32'` | Typ der Schreibkontrolle (nur wenn readControl eingeschaltet ist). Mögliche Werte sind : 'md5' (bestes, aber am Langsamsten), 'crc32' (etwas weniger sicher, aber schneller, beste Wahl), 'strlen' um nur die Länge zu testen (schnellstes).
`hashedDirectoryLevel` | `int` | `0` | Level der gehashten Verzeichnis Struktur: 0 heißt "keine gehashte Verzeichnis Strutur, 1 heißt "ein Level von Verzeichnissen", 2 heißt "zwei Levels"... Diese Option kann den Cache nur dann schneller machen, wenn viele Tausende Cache Dateien verwendet werden. Nur spezielle Messungen können helfen, den perfekten Wert zu finden. Möglicherweise ist 1 oder 2 ein guter Anfang.
`hashedDirectoryUmask` | `int` | `0700` | Umask für die gehashte Verzeichnis Struktur
`fileNamePrefix` | `string` | `'zend_cache'` | Präfix für Cache Dateien; man muss mit dieser Option sehr vorsichtig umgehen, weil ein zu generischer Wert in einem System Cache Verzeichnis (wie /tmp) kann beim Löschen des Caches zu großen Problemen führen.

### 4.4.2. Zend_Cache_Backend_Sqlite

Dieses Backend speichert die Cache Datensätze in einer SQLite Datenbank.

Mögliche Optionen sind :

Tabelle 4.7. Mögliche Optionen

Option | Daten Typ | Standardwert | Beschreibung
--- | --- | --- | ---
`cacheDBCompletePath (mandatory)` | `string` | `null` | Der komplette Pfad (inklusive Dateiname) der SQLite Datenbank
`automaticVacuumFactor` | `int` | `10` | Deaktiviere / stelle den automatischen Vakuumprozess ein. Der automatische Vakuumprozess defragmentiert die Datenbankdatei (und verkleinert sie) wenn clean() oder delete() aufgerufen wird: 0 bedeutet kein automatisches Vakuum; 1 bedeutet systematisches Vakuum (wenn die delete() or clean() Methoden aufgerufen werden; x (integer) > 1 => automatisches Vakuum zufällig einmal pro x clean() oder delete() Aufrufe.

### 4.4.3. Zend_Cache_Backend_Memcached

Dieses Backend speichert Cache Datensätze in einem Memcache Server. memcached ist ein hoch-performantes, verteiltes Speicher Objekt Caching System. Um dieses Backend zu benutzen, wird ein Memcached Dämon benötigt und die memcache PECL Erweiterung.

Vorsicht: mit diesem Backend werden zur Zeit "Marker" nicht unterstützt genauso wie das "doNotTestCacheValidity=true" Argument.

Mögliche Optionen sind :

Tabelle 4.8. Mögliche Optionen

Option | Daten Typ | Standardwert | Beschreibung
--- | --- | --- | ---
`servers` | `array` | `array(array('host' => 'localhost','port' => 11211, 'persistent' => true))` | Ein Array von Memcached Servern; jeder Memcached Server wird durch ein assoziatives Array beschrieben : 'host' => (string) : Der Name des Memcached Servers, 'port' => (int) : Der Port des Memcached Servers, 'persistent' => (bool) : Persistente Verbindungen für diesen Memcached Server verwenden oder nicht
`compression` | `boolean` | `flase` | true wenn on-the-fly Kompression verwendet werden soll

### 4.4.4. Zend_Cache_Backend_APC

Dieses Backend speichert Cache Datensätze im Shared Memory durch die APC (Alternativer PHP Cache) Erweiterung (welche natürlich für die Verwendung dieses Backends benötigt wird).

Vorsicht: mit diesem Backend werden "Marker" zur Zeit nicht unterstützt genauso wie das "doNotTestCacheValidity=true" Argument.

Es gibt keine Optionen für dieses Backend.

### 4.4.5. Zend_Cache_Backend_ZendPlatform

Dieses Backend verwendet die Content Caching API des Zend Platform Produktes. Natürlich muss man die Zend Platform installiert haben, um dieses Backend verwenden zu können.

Dieses Backend unterstützt Tags, aber nicht den `CLEANING_MODE_NOT_MATCHING_TAG` Löschmodus.

Es gibt keine Optionen für dieses Backend.

Zurück | Nach oben | Weiter
4.3. Zend_Cache Frontends | Zum Anfang | Kapitel 5. Zend_Config