| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515 |
- <?xml version="1.0" encoding="UTF-8"?>
- <!-- Reviewed: no -->
- <sect1 id="zend.cache.backends">
- <title>Бэкэнды Zend_Cache</title>
- <para>
- Есть два типа бэкэндов: стандартные и расширенные. Расширенные
- предоставляют больше функциональных возможностей.
- </para>
- <sect2 id="zend.cache.backends.file">
- <title>Zend_Cache_Backend_File</title>
- <para>
- Этот расширенный бэкэнд хранит записи кэша в файлах (в выбранной
- директории).
- </para>
- <para>
- Доступные опции:
- </para>
- <table id="zend.cache.backends.file.table">
- <title>Опции Zend_Cache_Backend_File</title>
- <tgroup cols="4">
- <thead>
- <row>
- <entry>Опция</entry>
- <entry>Тип данных</entry>
- <entry>Значение по умолчанию</entry>
- <entry>Описание</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry><emphasis>cache_dir</emphasis></entry>
- <entry><type>String</type></entry>
- <entry>'<filename>/tmp/</filename>'</entry>
- <entry>
- Директория, в которой хранятся файлы кэша
- </entry>
- </row>
- <row>
- <entry><emphasis>file_locking</emphasis></entry>
- <entry><type>Boolean</type></entry>
- <entry><constant>TRUE</constant></entry>
- <entry>
- Включает/отключает блокировку файлов. Позволяет
- избежать искажения данных кэша в плохих условиях, но
- это не поможет при многопоточном веб-сервере или
- файловой системе <acronym>NFS</acronym>...
- </entry>
- </row>
- <row>
- <entry><emphasis>read_control</emphasis></entry>
- <entry><type>Boolean</type></entry>
- <entry><constant>TRUE</constant></entry>
- <entry>
- Включает/отключает контроль чтения. Если включен,
- то в файл кэша добавляется контрольный ключ и этот
- ключ сравнивается с другим, вычисляемым после
- чтения.
- </entry>
- </row>
- <row>
- <entry><emphasis>read_control_type</emphasis></entry>
- <entry><type>String</type></entry>
- <entry>'crc32'</entry>
- <entry>
- Тип контроля чтения (только если включен
- readControl). Возможные значения: 'md5' (лучший, но
- самый медленный),
- 'crc32' (немного менее безопасный,
- но более быстрый, лучший выбор),
- 'adler32' (новая альтернатива, быстрее, чем crc32),
- 'strlen' для контроля только по длине (самый
- быстрый).
- </entry>
- </row>
- <row>
- <entry><emphasis>hashed_directory_level</emphasis></entry>
- <entry><type>Integer</type></entry>
- <entry>0</entry>
- <entry>
- Уровень структуры хэшированного каталога:
- 0 означает "нет структуры
- хэшированного каталога",
- 1 — "один уровень каталога",
- 2 — "два уровня"... Эта опция ускорит
- кэширование только если у вас тысячи файлов кэша.
- Только сравнение может помочь вам выбрать
- оптимальное для вас значение. Возможно,
- 1 или 2 будут хорошими
- значениями для начала.
- </entry>
- </row>
- <row>
- <entry><emphasis>hashed_directory_umask</emphasis></entry>
- <entry><type>Integer</type></entry>
- <entry>0700</entry>
- <entry>
- Маска режима создания файлов для структуры
- хэшированного каталога.
- </entry>
- </row>
- <row>
- <entry><emphasis>file_name_prefix</emphasis></entry>
- <entry><type>String</type></entry>
- <entry>'zend_cache'</entry>
- <entry>
- Префикс для файлов кэша. Будьте осторожны с этой
- опцией, поскольку слишком общее значение в
- системной директории для кэша (например,
- <filename>/tmp</filename>)
- может привести к катастрофическим последствиям при
- очищении кэша.
- </entry>
- </row>
- <row>
- <entry><emphasis>cache_file_umask</emphasis></entry>
- <entry><type>Integer</type></entry>
- <entry>0700</entry>
- <entry>
- umask для файлов кэша
- </entry>
- </row>
- <row>
- <entry><emphasis>metatadatas_array_max_size</emphasis></entry>
- <entry><type>Integer</type></entry>
- <entry>100</entry>
- <entry>
- Внутренний максимальный размер для массива
- метаданных (не изменяйте это значение если только
- не знаете, что делаете)
- </entry>
- </row>
- </tbody>
- </tgroup>
- </table>
- </sect2>
- <sect2 id="zend.cache.backends.sqlite">
- <title>Zend_Cache_Backend_Sqlite</title>
- <para>
- Этот расширенный бэкэнд хранит записи кэша в базе данных SQLite.
- </para>
- <para>
- Доступные опции:
- </para>
- <table id="zend.cache.backends.sqlite.table">
- <title>Опции Zend_Cache_Backend_Sqlite</title>
- <tgroup cols="4">
- <thead>
- <row>
- <entry>Опция</entry>
- <entry>Тип данных</entry>
- <entry>Значение по умолчанию</entry>
- <entry>Описание</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry><emphasis>cache_db_complete_path</emphasis> (обязательный)</entry>
- <entry><type>String</type></entry>
- <entry><constant>NULL</constant></entry>
- <entry>
- Полный путь (с именем файла) к базе данных SQLite.
- </entry>
- </row>
- <row>
- <entry><emphasis>automatic_vacuum_factor</emphasis></entry>
- <entry><type>Integer</type></entry>
- <entry>10</entry>
- <entry>
- Отклочение/настройка процесса автоматической
- чистки. Автоматическая чистка дефрагментирует
- файл данных (и делает его меньше) при вызове
- методов <methodname>clean()</methodname>
- и <methodname>delete()</methodname>:
- 0 - автоматическая чистка отключена;
- 1 - систематическая чистка (при каждом вызове
- методов <methodname>delete()</methodname> или
- <methodname>clean()</methodname>);
- x (целое число больше 1) - автоматическая чистка
- производится случайным образом 1 раз на x вызовов
- методов <methodname>clean()</methodname>
- и <methodname>delete()</methodname>.
- </entry>
- </row>
- </tbody>
- </tgroup>
- </table>
- </sect2>
- <sect2 id="zend.cache.backends.memcached">
- <title>Zend_Cache_Backend_Memcached</title>
- <para>
- Этот расширенный бэкэнд хранит записи кэша в сервере memcached.
- <ulink url="http://www.danga.com/memcached/">memcached</ulink> —
- высокопроизводительная распределенная система кэширования объектов
- в памяти. Для того, чтобы использовать этот бэкэнд, вам нужны
- установленные демон memcached и <ulink url="http://pecl.php.net/package/memcache">расширение PECL для memcached</ulink>.
- </para>
- <para>
- Будьте осторожны: на данный момент теги для этого бэкэнда
- не поддерживаются, то же самое с аргументом
- "doNotTestCacheValidity=true".
- </para>
- <para>
- Доступные опции:
- </para>
- <table id="zend.cache.backends.memcached.table">
- <title>Опции Zend_Cache_Backend_Memcached</title>
- <tgroup cols="4">
- <thead>
- <row>
- <entry>Опция</entry>
- <entry>Тип данных</entry>
- <entry>Значение по умолчанию</entry>
- <entry>Описание</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry><emphasis>servers</emphasis></entry>
- <entry><type>Array</type></entry>
- <entry>
- array(array('host' => 'localhost', 'port' => 11211, 'persistent' => true, 'weight' => 1,
- 'timeout' => 5, 'retry_interval' => 15, 'status' => true, 'failure_callback' => '' ))
- </entry>
- <entry>
- Массив серверов memcached; каждый сервер описан
- ассоциативным массивом:
- 'host' => (string) : имя сервера memcached,
- 'port' => (int) : порт сервера memcached,
- 'persistent' => (bool) : использовать или нет
- постоянное соединение с сервером,
- 'weight' => (int) : вес сервера memcached,
- 'timeout' => (int) : таймаут сервера memcached,
- 'retry_interval' => (int) : интервал между повторными попытками,
- 'status' => (bool) : статус сервера memcached,
- 'failure_callback' => (callback) : обратный вызов сервера memcached
- </entry>
- </row>
- <row>
- <entry><emphasis>compression</emphasis></entry>
- <entry><type>Boolean</type></entry>
- <entry><constant>FALSE</constant></entry>
- <entry>
- <constant>TRUE</constant>, если вы хотите использовать
- компрессию "на лету"
- </entry>
- </row>
- <row>
- <entry><emphasis>compatibility</emphasis></entry>
- <entry><type>Boolean</type></entry>
- <entry><constant>FALSE</constant></entry>
- <entry>
- <constant>TRUE</constant>, если нужно включить режим
- совместимости со старыми серверами и расширениями
- memcache
- </entry>
- </row>
- </tbody>
- </tgroup>
- </table>
- </sect2>
- <sect2 id="zend.cache.backends.apc">
- <title>Zend_Cache_Backend_Apc</title>
- <para>
- Этот расширенный бэкэнд хранит записи кэша в совместно используемой
- памяти через расширение
- <ulink url="http://pecl.php.net/package/APC">APC</ulink>
- (Alternative <acronym>PHP</acronym> Cache — альтернативный
- кэш <acronym>PHP</acronym>), которое, разумеется, необходимо
- установить для использования этого бэкэнда.
- </para>
- <para>
- Будьте осторожны: на данный момент теги для этого бэкэнда
- не поддерживаются, то же самое и с аргументом
- "doNotTestCacheValidity=true".
- </para>
- <para>
- Нет специальных опций для этого бэкэнда.
- </para>
- </sect2>
- <sect2 id="zend.cache.backends.xcache">
- <title>Zend_Cache_Backend_Xcache</title>
- <para>
- Этот бэкэнд хранит записи кэша в совместно используемой
- памяти через расширение
- <ulink url="http://xcache.lighttpd.net/">XCache</ulink>, которое
- должно быть установлено для использования данного бэкэнда.
- </para>
- <para>
- Будьте осторожны: на данный момент теги для этого бэкэнда
- не поддерживаются, то же самое и с аргументом
- "doNotTestCacheValidity=true".
- </para>
- <para>
- Доступные опции:
- </para>
- <table id="zend.cache.backends.xcache.table">
- <title>Опции Zend_Cache_Backend_Xcache</title>
- <tgroup cols="4">
- <thead>
- <row>
- <entry>Опция</entry>
- <entry>Тип данных</entry>
- <entry>Значение по умолчанию</entry>
- <entry>Описание</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry><emphasis>user</emphasis></entry>
- <entry><type>String</type></entry>
- <entry><constant>NULL</constant></entry>
- <entry>
- <filename>xcache.admin.user</filename>,
- необходима для метода
- <methodname>clean()</methodname>
- </entry>
- </row>
- <row>
- <entry><emphasis>password</emphasis></entry>
- <entry><type>String</type></entry>
- <entry><constant>NULL</constant></entry>
- <entry>
- <filename>xcache.admin.pass</filename> - пароль
- в незашифрованном виде,
- необходим для метода
- <methodname>clean()</methodname>
- </entry>
- </row>
- </tbody>
- </tgroup>
- </table>
- </sect2>
- <sect2 id="zend.cache.backends.platform">
- <title>Zend_Cache_Backend_ZendPlatform</title>
- <para>
- Этот бэкэнд использует <acronym>API</acronym>
- <ulink url="http://www.zend.com/products/platform">Zend
- Platform</ulink> для кэширования контента. Естетственно,
- использование этого бэкэнда требует наличия установленного Zend
- Platform.
- </para>
- <para>
- Этот бэкэнд поддерживает теги, но не поддерживает режим очищения
- <constant>CLEANING_MODE_NOT_MATCHING_TAG</constant>.
- </para>
- <para>
- Указывайте этот бэкэнд, используя разделитель слов '-', '.', ' ',
- или '_' между словами 'Zend' и 'Platform', когда используете метод
- <methodname>Zend_Cache::factory()</methodname>:
- </para>
- <programlisting language="php"><![CDATA[
- $cache = Zend_Cache::factory('Core', 'Zend Platform');
- ]]></programlisting>
- <para>
- Нет специальных опций для этого бэкэнда.
- </para>
- </sect2>
- <sect2 id="zend.cache.backends.twolevels">
- <title>Zend_Cache_Backend_TwoLevels</title>
- <para>
- Этот расширенный бэкэнд является гибридным. Он сохраняет записи кэша
- через два других бэкэнда: быстрый, но ограниченный в функциональных
- возможностях, бэкэнд (Apc, Memcache и др.),
- и "медленный", но более функциональный, бэкэнд (File, Sqlite и др.)
- </para>
- <para>
- Этот бэкэнд использует параметр priority (который передается
- фронтэнду при сохранении записи) и оставшееся место в быстром
- бэкэнде для оптимизации использования этих двух бэкэндов.
- </para>
- <para>
- Доступные опции:
- </para>
- <table id="zend.cache.backends.twolevels.table">
- <title>Опции Zend_Cache_Backend_TwoLevels</title>
- <tgroup cols="4">
- <thead>
- <row>
- <entry>Опция</entry>
- <entry>Тип данных</entry>
- <entry>Значение по умолчанию</entry>
- <entry>Описание</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry><emphasis>slow_backend</emphasis></entry>
- <entry><type>String</type></entry>
- <entry>File</entry>
- <entry>
- Имя "медленного" бэкэнда
- </entry>
- </row>
- <row>
- <entry><emphasis>fast_backend</emphasis></entry>
- <entry><type>String</type></entry>
- <entry>Apc</entry>
- <entry>
- Имя "быстрого" бэкэнда
- </entry>
- </row>
- <row>
- <entry><emphasis>slow_backend_options</emphasis></entry>
- <entry><type>Array</type></entry>
- <entry><methodname>array()</methodname></entry>
- <entry>
- Опции для "медленного" бэкэнда
- </entry>
- </row>
- <row>
- <entry><emphasis>fast_backend_options</emphasis></entry>
- <entry><type>Array</type></entry>
- <entry><methodname>array()</methodname></entry>
- <entry>
- Опции для "быстрого" бэкэнда
- </entry>
- </row>
- <row>
- <entry><emphasis>slow_backend_custom_naming</emphasis></entry>
- <entry><type>Boolean</type></entry>
- <entry><constant>FALSE</constant></entry>
- <entry>
- Если <constant>TRUE</constant>, то аргумент slow_backend
- используется как полное имя класса, иначе
- значение этого аргумента используется в конце
- имени класса
- "<classname>Zend_Cache_Backend_</classname>[...]".
- </entry>
- </row>
- <row>
- <entry><emphasis>fast_backend_custom_naming</emphasis></entry>
- <entry><type>Boolean</type></entry>
- <entry><constant>FALSE</constant></entry>
- <entry>
- Если <constant>TRUE</constant>, то аргумент fast_backend
- используется как полное имя класса.
- Если <constant>FALSE</constant>, то
- значение этого аргумента используется в конце
- имени класса
- "<classname>Zend_Cache_Backend_</classname>[...]".
- </entry>
- </row>
- <row>
- <entry><emphasis>slow_backend_autoload</emphasis></entry>
- <entry><type>Boolean</type></entry>
- <entry><constant>FALSE</constant></entry>
- <entry>
- Если <constant>TRUE</constant>, то для медленного бэкэнда не
- будет производиться включение require_once
- (полезно только при использовании собственных
- бэкэндов).
- </entry>
- </row>
- <row>
- <entry><emphasis>fast_backend_autoload</emphasis></entry>
- <entry><type>Boolean</type></entry>
- <entry><constant>FALSE</constant></entry>
- <entry>
- Если <constant>TRUE</constant>, то для быстрого бэкэнда не
- будет производиться включение require_once
- (полезно только при использовании собственных
- бэкэндов).
- </entry>
- </row>
- <row>
- <entry><emphasis>auto_refresh_fast_cache</emphasis></entry>
- <entry><type>Boolean</type></entry>
- <entry><constant>TRUE</constant></entry>
- <entry>
- Если <constant>TRUE</constant>, то будет производиться
- автоматическое обновление "быстрого" кэша при
- попадании в кэш.
- </entry>
- </row>
- <row>
- <entry><emphasis>stats_update_factor</emphasis></entry>
- <entry><type>Integer</type></entry>
- <entry>10</entry>
- <entry>
- Настройка частоты вычисления
- процента заполнения быстрого бэкэнда,
- либо полное отключение вычисления. При сохранении
- записи в кэш вычисление процента заполнения
- быстрого бэкэнда производится случайным образом
- 1 раз на x записей в кэш.
- </entry>
- </row>
- </tbody>
- </tgroup>
- </table>
- </sect2>
- <sect2 id="zend.cache.backends.zendserver">
- <title>Zend_Cache_Backend_ZendServer_Disk и Zend_Cache_Backend_ZendServer_ShMem</title>
- <para>
- Эти бэкэнды служат для сохранения записей кэша через соответствующую
- возможность <ulink url="http://www.zend.com/en/products/server/downloads-all?zfs=zf_download">Zend Server</ulink>.
- </para>
- <para>
- Будьте осторожны - в настоящий момент этот бэкэнд не поддерживает
- теги, так же, как и аргумент "doNotTestCacheValidity=true".
- </para>
- <para>
- Этот бэкэнд работает только в среде Zend Server с запросами,
- производимыми через <acronym>HTTP</acronym> и
- <acronym>HTTPS</acronym>, и не работает в случае скриптов,
- запускаемых через командную строку.
- </para>
- <para>
- Нет специальных опций для этого бэкэнда.
- </para>
- </sect2>
- </sect1>
- <!--
- vim:se ts=4 sw=4 et:
- -->
|