4.4. Zend_Cache backends

4.4.1. Zend_Cache_Backend_File

Ces backends stockent les enregistrements de cache dans des fichiers (dans un dossier choisi).

Les options disponibles sont :

Tableau 4.6. Options disponibles

Option Type de données Valeur par défaut Description
cache_dir string '/tmp/' Répertoire où stocker les fichiers de cache
file_locking booléen true Active / désactive le verrou de fichier : peut éviter la corruption du cache dans de mauvaises circonstances, mais il n'aide en rien sur des serveur multithreadés ou sur des systèmes de fichier NFS...
read_control booléen true Active / désactive le contrôle de lecture : si activé, une clé de contrôle est embarquée dans le fichier de cache et cette clé est comparée avec celle calculée après la lecture.
read_control_type string 'crc32' Type de contrôle de lecture (seulement si le contrôle de lecture est activé). Les valeurs disponibles sont : 'md5' (meilleur mais plus lent), 'crc32' (un peu moins sécurisé, mais plus rapide, c'est un meilleur choix), 'strlen' pour un test de longueur uniquement (le plus rapide).
hashed_directory_level int 0 Niveau de structure du hash du répertoire : 0 signifie "pas de hashage de la structure du répertoire", 1 signifie "un niveau de répertoire", 2 signifie "deux niveaux"... Cette option peut accélérer le cache seulement lorsque vous avez plusieurs centaines de fichiers de cache. Seuls des benchs spécifiques peuvent vous aider à choisir la meilleure valeur pour vous. 1 ou 2, peut-être un bon départ.
hashed_directory_umask int 0700 Umask pour l'arboresence
file_name_prefix string 'zend_cache' Préfixe pour les fichiers mis en cache ; faîtes très attention avec cette option, en cas de valeur trop générique dans le dossier de cache (comme /tmp), ceci peut causer des désastres lors du nettoyage du cache.

4.4.2. Zend_Cache_Backend_Sqlite

Ce backend stocke les enregistrements de cache dans une base de donnée SQLite.

Les options disponibles sont :

Tableau 4.7. Options disponibles

Option Type de données Valeur par défaut Description
cache_db_complete_path (mandatory) string null Le chemin complet (nom du fichier inclus) de la base de donnée SQLite
automatic_vacuum_factor int 10 Désactive / Paramètre le processus de vidange automatique. Celui-ci défragemente le fichier de base de données (et diminue sa taille) quand clean() ou delete() est appelé : 0 pour une vidange automatique ; 1 pour une vidange systématique (quand clean() ou delete() est appelé) ; x (entier) > 1 pour une vidange automatique aléatoirement 1 fois sur x clean() ou delete().

4.4.3. Zend_Cache_Backend_Memcached

Ces backends stockent les enregistrements de cache dans un serveur memcached. memcached est un système de cache en mémoire distribuée, de haute performance. Pour utiliser ce backend, vous devez avoir un démon memcached et l'extension PECL memcache.

ATTENTION : avec ce backend, les balises ("tags") ne sont pas supportées pour le moment comme l'argument "doNotTestCacheValidity=true".

Les options disponibles sont :

Tableau 4.8. Options disponibles

Option Type de données Valeur par défaut Description
servers array array(array('host' => 'localhost','port' => 11211, 'persistent' => true)) Un tableau de serveurs memcached ; chaque serveur memcached est décrit par un tableau associatif : 'host' => (string) : le nom du serveur memcached, 'port' => (int) : le port du serveur memcached, 'persistent' => (bool) : utilisation ou pas des connexions persistentes pour ce serveur memcached.
compression booléen false vrai si vous voulez utiliser la compression à la volée

4.4.4. Zend_Cache_Backend_APC

Ce backend stocke les enregistrements de cache en mémoire partagée grâce à l'extension APC (Alternative PHP Cache) qui est requise pour utiliser ce backend.

Attention: avec ce backend, les balises ("tags") ne sont pas supportées pour le moment comme l'argument "doNotTestCacheValidity=true".

Il n'y a pas d'options pour ce backend.

4.4.5. Zend_Cache_Backend_ZendPlatform

Ce backend utilise l'API de cache de contenu de la Zend Platform. Naturellement, pour utiliser ce backend, vous devez avoir installé une Zend Platorm.

Ce backend supporte les balises ("tags") mais ne supporte pas le mode de nettoyage CLEANING_MODE_NOT_MATCHING_TAG.

Il n'y a pas d'options pour ce backend.