4.4. Бэкэнды Zend_Cache

4.4.1. Zend_Cache_Backend_File

Этот бэкэнд хранит записи кэша в файлах (в выбранной директории).

Доступные опции:

Таблица 4.6. Опции Zend_Cache_Backend_File

Опция Тип данных Значение по умолчанию Описание
cache_dir string '/tmp/' Директория, в которой хранятся файлы кэша
file_locking boolean true Включает/отключает блокировку файлов. Позволяет избежать искажения данных кэша в плохих условиях, но это не поможет при многопоточном веб-сервере или файловой системе NFS...
read_control boolean true Включает/отключает контроль чтения. Если включен, то в файл кэша добавляется контрольный ключ и этот ключ сравнивается с другим, вычисляемым после чтения.
read_control_type string 'crc32' Тип контроля чтения (только если включен readControl). Возможные значения: 'md5' (лучший, но самый медленный), 'crc32' (немного менее безопасный, но более быстрый, лучший выбор), 'adler32' (новая альтернатива, быстрее, чем crc32), 'strlen' для контроля только по длине (самый быстрый).
hashed_directory_level int 0 Уровень структуры хэшированного каталога: 0 означает "нет структуры хэшированного каталога", 1 — "один уровень каталога", 2 — "два уровня"... Эта опция ускорит кэширование только если у вас тысячи файлов кэша. Только сравнение может помочь вам выбрать оптимальное для вас значение. Возможно, 1 или 2 будут хорошими значениями для начала.
hashed_directory_umask int 0700 Маска режима создания файлов для стуктуры хэшированного каталога.
file_name_prefix string 'zend_cache' Префикс для файлов кэша. Будьте осторожны с этой опцией, поскольку слишком общее значение в системной директории для кэша (например '/tmp') может привести к катастрофичным последствиям при очищении кэша.

4.4.2. Zend_Cache_Backend_Sqlite

Этот бэкэнд хранит записи кэша в базе данных SQLite.

Доступные опции:

Таблица 4.7. Опции Zend_Cache_Backend_Sqlite

Опция Тип данных Значение по умолчанию Описание
cache_db_complete_path (обязательный) string null Полный путь (с именем файла) к базе данных SQLite.
automatic_vacuum_factor int 10 Отклочение/настройка процесса автоматической чистки. Автоматическая чистка дефрагментирует файл данных (и делает его меньше) при вызове методов clean() и delete(): 0 - автоматическая чистка отключена; 1 - систематическая чистка (при каждом вызове методов delete() или clean()); x (целое число больше 1) - автоматическая чистка производится случайным образом 1 раз на x вызовов методов clean() и delete().

4.4.3. Zend_Cache_Backend_Memcached

Этот бэкэнд хранит записи кэша в сервере memcached. memcached — высокопроизводительная распределенная система кэширования объектов в памяти. Для того, чтобы использовать этот бэкэнд, вам нужны установленные демон memcached и расширение PECL для memcached.

Будьте осторожны: на данный момент теги для этого бэкэнда не поддерживаются, то же самое с аргументом "doNotTestCacheValidity=true".

Доступные опции:

Таблица 4.8. Опции Zend_Cache_Backend_Memcached

Опция Тип данных Значение по умолчанию Описание
servers array array(array('host' => 'localhost','port' => 11211, 'persistent' => true)) Массив серверов memcached; каждый сервер описан ассоциативным массивом: 'host' => (string) : имя сервера memcached, 'port' => (int) : порт сервера memcached, 'persistent' => (bool) : использовать или нет постоянное соединение с этим сервером
compression boolean false true, если вы хотите использовать компрессию на лету

4.4.4. Zend_Cache_Backend_APC

Этот бэкэнд хранит записи кэша в совместно используемой памяти через расширение APC (Alternative PHP Cache — альтернативный кэш PHP), которое, разумеется, необходимо установить для использования этого бэкэнда.

Будьте осторожны: на данный момент теги для этого бэкэнда не поддерживаются, то же самое и с аргументом "doNotTestCacheValidity=true".

Нет специальных опций для этого бэкэнда.

4.4.5. Zend_Cache_Backend_ZendPlatform

Этот бэкэнд использует API Zend Platform для кэширования контента. Естетственно, использование этого бэкэнда требует наличия установленного Zend Platform.

Этот бэкэнд поддерживает теги, но не поддерживает режим очищения CLEANING_MODE_NOT_MATCHING_TAG.

Указывайте этот бэкэнд, используя разделитель слов '-', '.', ' ', или '_' между словами 'Zend' и 'Platform', когда используете метод Zend_Cache::factory():

<?php
$cache = Zend_Cache::factory('Core', 'Zend Platform');
        

Нет специальных опций для этого бэкэнда.

    Поддержать сайт на родительском проекте КГБ