[MANUAL] English:
[zend.git] / documentation / manual / ru / module_specs / Zend_Cache-Backends.xml
blobefe55512c7f1719c8dee99cae45d09e110e87bc4
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!-- Reviewed: no -->
3 <sect1 id="zend.cache.backends">
4     <title>Бэкэнды Zend_Cache</title>
5     <para>
6         Есть два типа бэкэндов: стандартные и расширенные. Расширенные
7         предоставляют больше функциональных возможностей.
8     </para>
9     <sect2 id="zend.cache.backends.file">
10         <title>Zend_Cache_Backend_File</title>
11         <para>
12             Этот расширенный бэкэнд хранит записи кэша в файлах (в выбранной
13             директории).
14         </para>
15         <para>
16             Доступные опции:
17         </para>
18         <table id="zend.cache.backends.file.table">
19             <title>Опции Zend_Cache_Backend_File</title>
20             <tgroup cols="4">
21                  <thead>
22                      <row>
23                          <entry>Опция</entry>
24                          <entry>Тип данных</entry>
25                          <entry>Значение по умолчанию</entry>
26                          <entry>Описание</entry>
27                      </row>
28                  </thead>
29                  <tbody>
30                       <row>
31                           <entry><emphasis>cache_dir</emphasis></entry>
32                           <entry><type>String</type></entry>
33                           <entry>'<filename>/tmp/</filename>'</entry>
34                           <entry>
35                               Директория, в которой хранятся файлы кэша
36                           </entry>
37                       </row>
38                       <row>
39                           <entry><emphasis>file_locking</emphasis></entry>
40                           <entry><type>Boolean</type></entry>
41                           <entry><constant>TRUE</constant></entry>
42                           <entry>
43                             Включает/отключает блокировку файлов. Позволяет
44                             избежать искажения данных кэша в плохих условиях, но
45                             это не поможет при многопоточном веб-сервере или
46                             файловой системе <acronym>NFS</acronym>...
47                           </entry>
48                       </row>
49                       <row>
50                           <entry><emphasis>read_control</emphasis></entry>
51                           <entry><type>Boolean</type></entry>
52                           <entry><constant>TRUE</constant></entry>
53                           <entry>
54                             Включает/отключает контроль чтения. Если включен,
55                             то в файл кэша добавляется контрольный ключ и этот
56                             ключ сравнивается с другим, вычисляемым после
57                             чтения.
58                           </entry>
59                       </row>
60                       <row>
61                           <entry><emphasis>read_control_type</emphasis></entry>
62                           <entry><type>String</type></entry>
63                           <entry>'crc32'</entry>
64                           <entry>
65                             Тип контроля чтения (только если включен
66                             readControl). Возможные значения: 'md5' (лучший, но
67                             самый медленный),
68                             'crc32' (немного менее безопасный,
69                             но более быстрый, лучший выбор),
70                             'adler32' (новая альтернатива, быстрее, чем crc32),
71                             'strlen' для контроля только по длине (самый
72                             быстрый).
73                         </entry>
74                       </row>
75                       <row>
76                           <entry><emphasis>hashed_directory_level</emphasis></entry>
77                           <entry><type>Integer</type></entry>
78                           <entry>0</entry>
79                           <entry>
80                               Уровень структуры хэшированного каталога:
81                              0 означает "нет структуры
82                              хэшированного каталога",
83                              1 — "один уровень каталога",
84                              2 — "два уровня"... Эта опция ускорит
85                              кэширование только если у вас тысячи файлов кэша.
86                              Только сравнение может помочь вам выбрать
87                              оптимальное для вас значение. Возможно,
88                              1 или 2 будут хорошими
89                              значениями для начала.
90                           </entry>
91                       </row>
92                       <row>
93                           <entry><emphasis>hashed_directory_umask</emphasis></entry>
94                           <entry><type>Integer</type></entry>
95                           <entry>0700</entry>
96                           <entry>
97                               Маска режима создания файлов для структуры
98                               хэшированного каталога.
99                         </entry>
100                       </row>
101                       <row>
102                           <entry><emphasis>file_name_prefix</emphasis></entry>
103                           <entry><type>String</type></entry>
104                           <entry>'zend_cache'</entry>
105                           <entry>
106                               Префикс для файлов кэша. Будьте осторожны с этой
107                               опцией, поскольку слишком общее значение в
108                               системной директории для кэша (например,
109                               <filename>/tmp</filename>)
110                               может привести к катастрофическим последствиям при
111                               очищении кэша.
112                         </entry>
113                       </row>
114                       <row>
115                           <entry><emphasis>cache_file_umask</emphasis></entry>
116                           <entry><type>Integer</type></entry>
117                           <entry>0700</entry>
118                           <entry>
119                               umask для файлов кэша
120                           </entry>
121                       </row>
122                       <row>
123                           <entry><emphasis>metatadatas_array_max_size</emphasis></entry>
124                           <entry><type>Integer</type></entry>
125                           <entry>100</entry>
126                           <entry>
127                               Внутренний максимальный размер для массива
128                               метаданных (не изменяйте это значение если только
129                               не знаете, что делаете)
130                           </entry>
131                       </row>
132                   </tbody>
133               </tgroup>
134           </table>
135     </sect2>
136     <sect2 id="zend.cache.backends.sqlite">
137         <title>Zend_Cache_Backend_Sqlite</title>
138         <para>
139             Этот расширенный бэкэнд хранит записи кэша в базе данных SQLite.
140         </para>
141         <para>
142             Доступные опции:
143         </para>
144         <table id="zend.cache.backends.sqlite.table">
145             <title>Опции Zend_Cache_Backend_Sqlite</title>
146             <tgroup cols="4">
147                  <thead>
148                      <row>
149                          <entry>Опция</entry>
150                          <entry>Тип данных</entry>
151                          <entry>Значение по умолчанию</entry>
152                          <entry>Описание</entry>
153                      </row>
154                  </thead>
155                  <tbody>
156                       <row>
157                           <entry><emphasis>cache_db_complete_path</emphasis> (обязательный)</entry>
158                           <entry><type>String</type></entry>
159                           <entry><constant>NULL</constant></entry>
160                           <entry>
161                               Полный путь (с именем файла) к базе данных SQLite.
162                           </entry>
163                       </row>
164                       <row>
165                           <entry><emphasis>automatic_vacuum_factor</emphasis></entry>
166                           <entry><type>Integer</type></entry>
167                           <entry>10</entry>
168                           <entry>
169                               Отклочение/настройка процесса автоматической
170                               чистки. Автоматическая чистка дефрагментирует
171                               файл данных (и делает его меньше) при вызове
172                               методов <methodname>clean()</methodname>
173                               и <methodname>delete()</methodname>:
174                               0 - автоматическая чистка отключена;
175                               1 - систематическая чистка (при каждом вызове
176                               методов <methodname>delete()</methodname> или
177                               <methodname>clean()</methodname>);
178                               x (целое число больше 1) - автоматическая чистка
179                               производится случайным образом 1 раз на x вызовов
180                               методов <methodname>clean()</methodname>
181                               и <methodname>delete()</methodname>.
182                           </entry>
183                       </row>
184                   </tbody>
185               </tgroup>
186           </table>
187     </sect2>
188     <sect2 id="zend.cache.backends.memcached">
189         <title>Zend_Cache_Backend_Memcached</title>
190         <para>
191             Этот расширенный бэкэнд хранит записи кэша в сервере memcached.
192             <ulink url="http://www.danga.com/memcached/">memcached</ulink> —
193             высокопроизводительная распределенная система кэширования объектов
194             в памяти. Для того, чтобы использовать этот бэкэнд, вам нужны
195             установленные демон memcached и <ulink url="http://pecl.php.net/package/memcache">расширение PECL для memcached</ulink>.
196         </para>
197         <para>
198             Будьте осторожны: на данный момент теги для этого бэкэнда
199             не поддерживаются, то же самое с аргументом
200             "doNotTestCacheValidity=true".
201         </para>
202         <para>
203             Доступные опции:
204         </para>
205         <table id="zend.cache.backends.memcached.table">
206             <title>Опции Zend_Cache_Backend_Memcached</title>
207             <tgroup cols="4">
208                  <thead>
209                      <row>
210                         <entry>Опция</entry>
211                         <entry>Тип данных</entry>
212                         <entry>Значение по умолчанию</entry>
213                         <entry>Описание</entry>
214                      </row>
215                  </thead>
216                  <tbody>
217                       <row>
218                           <entry><emphasis>servers</emphasis></entry>
219                           <entry><type>Array</type></entry>
220                           <entry>
221                               array(array('host' => 'localhost', 'port' => 11211, 'persistent' => true, 'weight' => 1,
222                               'timeout' => 5, 'retry_interval' => 15, 'status' => true, 'failure_callback' => '' ))
223                           </entry>
224                           <entry>
225                               Массив серверов memcached; каждый сервер описан
226                               ассоциативным массивом:
227                               'host' => (string) : имя сервера memcached,
228                               'port' => (int) : порт сервера memcached,
229                               'persistent' => (bool) : использовать или нет
230                               постоянное соединение с сервером,
231                               'weight' => (int) : вес сервера memcached,
232                               'timeout' => (int) : таймаут сервера memcached,
233                               'retry_interval' => (int) : интервал между повторными попытками,
234                               'status' => (bool) : статус сервера memcached,
235                               'failure_callback' => (callback) : обратный вызов сервера memcached
236                           </entry>
237                       </row>
238                       <row>
239                           <entry><emphasis>compression</emphasis></entry>
240                           <entry><type>Boolean</type></entry>
241                           <entry><constant>FALSE</constant></entry>
242                           <entry>
243                              <constant>TRUE</constant>, если вы хотите использовать
244                              компрессию "на лету"
245                           </entry>
246                       </row>
247                       <row>
248                           <entry><emphasis>compatibility</emphasis></entry>
249                           <entry><type>Boolean</type></entry>
250                           <entry><constant>FALSE</constant></entry>
251                           <entry>
252                              <constant>TRUE</constant>, если нужно включить режим
253                              совместимости со старыми серверами и расширениями
254                              memcache
255                           </entry>
256                       </row>
257                   </tbody>
258               </tgroup>
259           </table>
260     </sect2>
261     <sect2 id="zend.cache.backends.apc">
262         <title>Zend_Cache_Backend_Apc</title>
263         <para>
264             Этот расширенный бэкэнд хранит записи кэша в совместно используемой
265             памяти через расширение
266             <ulink url="http://pecl.php.net/package/APC">APC</ulink>
267             (Alternative <acronym>PHP</acronym> Cache — альтернативный
268             кэш <acronym>PHP</acronym>), которое, разумеется, необходимо
269             установить для использования этого бэкэнда.
270         </para>
271         <para>
272             Будьте осторожны: на данный момент теги для этого бэкэнда
273             не поддерживаются, то же самое и с аргументом
274             "doNotTestCacheValidity=true".
275         </para>
276         <para>
277             Нет специальных опций для этого бэкэнда.
278         </para>
279     </sect2>
280     <sect2 id="zend.cache.backends.xcache">
281         <title>Zend_Cache_Backend_Xcache</title>
282         <para>
283             Этот бэкэнд хранит записи кэша в совместно используемой
284             памяти через расширение
285             <ulink url="http://xcache.lighttpd.net/">XCache</ulink>, которое
286             должно быть установлено для использования данного бэкэнда.
287         </para>
288         <para>
289             Будьте осторожны: на данный момент теги для этого бэкэнда
290             не поддерживаются, то же самое и с аргументом
291             "doNotTestCacheValidity=true".
292         </para>
293         <para>
294             Доступные опции:
295         </para>
296         <table id="zend.cache.backends.xcache.table">
297             <title>Опции Zend_Cache_Backend_Xcache</title>
298             <tgroup cols="4">
299                  <thead>
300                      <row>
301                          <entry>Опция</entry>
302                          <entry>Тип данных</entry>
303                          <entry>Значение по умолчанию</entry>
304                          <entry>Описание</entry>
305                      </row>
306                  </thead>
307                  <tbody>
308                       <row>
309                           <entry><emphasis>user</emphasis></entry>
310                           <entry><type>String</type></entry>
311                           <entry><constant>NULL</constant></entry>
312                           <entry>
313                               <filename>xcache.admin.user</filename>,
314                               необходима для метода
315                               <methodname>clean()</methodname>
316                           </entry>
317                       </row>
318                       <row>
319                           <entry><emphasis>password</emphasis></entry>
320                           <entry><type>String</type></entry>
321                           <entry><constant>NULL</constant></entry>
322                           <entry>
323                               <filename>xcache.admin.pass</filename> - пароль
324                               в незашифрованном виде,
325                               необходим для метода
326                               <methodname>clean()</methodname>
327                           </entry>
328                       </row>
329                   </tbody>
330               </tgroup>
331           </table>
332     </sect2>
333     <sect2 id="zend.cache.backends.platform">
334         <title>Zend_Cache_Backend_ZendPlatform</title>
335         <para>
336             Этот бэкэнд использует <acronym>API</acronym>
337             <ulink url="http://www.zend.com/products/platform">Zend
338             Platform</ulink> для кэширования контента. Естетственно,
339             использование этого бэкэнда требует наличия установленного Zend
340             Platform.
341         </para>
342         <para>
343             Этот бэкэнд поддерживает теги, но не поддерживает режим очищения
344             <constant>CLEANING_MODE_NOT_MATCHING_TAG</constant>.
345         </para>
346         <para>
347             Указывайте этот бэкэнд, используя разделитель слов '-', '.', ' ',
348             или '_' между словами 'Zend' и 'Platform', когда используете метод
349             <methodname>Zend_Cache::factory()</methodname>:
350         </para>
351         <programlisting language="php"><![CDATA[
352 $cache = Zend_Cache::factory('Core', 'Zend Platform');
353 ]]></programlisting>
354         <para>
355             Нет специальных опций для этого бэкэнда.
356         </para>
357     </sect2>
358     <sect2 id="zend.cache.backends.twolevels">
359         <title>Zend_Cache_Backend_TwoLevels</title>
360         <para>
361             Этот расширенный бэкэнд является гибридным. Он сохраняет записи кэша
362             через два других бэкэнда: быстрый, но ограниченный в функциональных
363             возможностях, бэкэнд (Apc, Memcache и др.),
364             и "медленный", но более функциональный, бэкэнд (File, Sqlite и др.)
365         </para>
366         <para>
367             Этот бэкэнд использует параметр priority (который передается
368             фронтэнду при сохранении записи) и оставшееся место в быстром
369             бэкэнде для оптимизации использования этих двух бэкэндов.
370         </para>
371         <para>
372             Доступные опции:
373         </para>
374         <table id="zend.cache.backends.twolevels.table">
375             <title>Опции Zend_Cache_Backend_TwoLevels</title>
376             <tgroup cols="4">
377                  <thead>
378                       <row>
379                          <entry>Опция</entry>
380                          <entry>Тип данных</entry>
381                          <entry>Значение по умолчанию</entry>
382                          <entry>Описание</entry>
383                     </row>
384                  </thead>
385                  <tbody>
386                       <row>
387                           <entry><emphasis>slow_backend</emphasis></entry>
388                           <entry><type>String</type></entry>
389                           <entry>File</entry>
390                           <entry>
391                               Имя "медленного" бэкэнда
392                           </entry>
393                       </row>
394                       <row>
395                           <entry><emphasis>fast_backend</emphasis></entry>
396                           <entry><type>String</type></entry>
397                           <entry>Apc</entry>
398                           <entry>
399                               Имя "быстрого" бэкэнда
400                           </entry>
401                       </row>
402                       <row>
403                           <entry><emphasis>slow_backend_options</emphasis></entry>
404                           <entry><type>Array</type></entry>
405                           <entry><methodname>array()</methodname></entry>
406                           <entry>
407                               Опции для "медленного" бэкэнда
408                           </entry>
409                       </row>
410                       <row>
411                           <entry><emphasis>fast_backend_options</emphasis></entry>
412                           <entry><type>Array</type></entry>
413                           <entry><methodname>array()</methodname></entry>
414                           <entry>
415                               Опции для "быстрого" бэкэнда
416                           </entry>
417                       </row>
418                       <row>
419                           <entry><emphasis>slow_backend_custom_naming</emphasis></entry>
420                           <entry><type>Boolean</type></entry>
421                           <entry><constant>FALSE</constant></entry>
422                           <entry>
423                               Если <constant>TRUE</constant>, то аргумент slow_backend
424                               используется как полное имя класса, иначе
425                               значение этого аргумента используется в конце
426                               имени класса
427                               "<classname>Zend_Cache_Backend_</classname>[...]".
428                           </entry>
429                       </row>
430                       <row>
431                           <entry><emphasis>fast_backend_custom_naming</emphasis></entry>
432                           <entry><type>Boolean</type></entry>
433                           <entry><constant>FALSE</constant></entry>
434                           <entry>
435                               Если <constant>TRUE</constant>, то аргумент fast_backend
436                               используется как полное имя класса.
437                               Если <constant>FALSE</constant>, то
438                               значение этого аргумента используется в конце
439                               имени класса
440                               "<classname>Zend_Cache_Backend_</classname>[...]".
441                           </entry>
442                       </row>
443                       <row>
444                           <entry><emphasis>slow_backend_autoload</emphasis></entry>
445                           <entry><type>Boolean</type></entry>
446                           <entry><constant>FALSE</constant></entry>
447                           <entry>
448                               Если <constant>TRUE</constant>, то для медленного бэкэнда не
449                               будет производиться включение require_once
450                               (полезно только при использовании собственных
451                               бэкэндов).
452                           </entry>
453                       </row>
454                       <row>
455                           <entry><emphasis>fast_backend_autoload</emphasis></entry>
456                           <entry><type>Boolean</type></entry>
457                           <entry><constant>FALSE</constant></entry>
458                           <entry>
459                               Если <constant>TRUE</constant>, то для быстрого бэкэнда не
460                               будет производиться включение require_once
461                               (полезно только при использовании собственных
462                               бэкэндов).
463                           </entry>
464                       </row>
465                       <row>
466                           <entry><emphasis>auto_refresh_fast_cache</emphasis></entry>
467                           <entry><type>Boolean</type></entry>
468                           <entry><constant>TRUE</constant></entry>
469                           <entry>
470                               Если <constant>TRUE</constant>, то будет производиться
471                               автоматическое обновление "быстрого" кэша при
472                               попадании в кэш.
473                           </entry>
474                       </row>
475                       <row>
476                           <entry><emphasis>stats_update_factor</emphasis></entry>
477                           <entry><type>Integer</type></entry>
478                           <entry>10</entry>
479                           <entry>
480                               Настройка частоты вычисления
481                               процента заполнения быстрого бэкэнда,
482                               либо полное отключение вычисления. При сохранении
483                               записи в кэш вычисление процента заполнения
484                               быстрого бэкэнда производится случайным образом
485                               1 раз на x записей в кэш.
486                           </entry>
487                       </row>
488                   </tbody>
489               </tgroup>
490           </table>
491     </sect2>
492     <sect2 id="zend.cache.backends.zendserver">
493         <title>Zend_Cache_Backend_ZendServer_Disk и Zend_Cache_Backend_ZendServer_ShMem</title>
494         <para>
495             Эти бэкэнды служат для сохранения записей кэша через соответствующую
496             возможность <ulink url="http://www.zend.com/en/products/server/downloads-all?zfs=zf_download">Zend Server</ulink>.
497         </para>
498         <para>
499             Будьте осторожны - в настоящий момент этот бэкэнд не поддерживает
500             теги, так же, как и аргумент "doNotTestCacheValidity=true".
501         </para>
502         <para>
503             Этот бэкэнд работает только в среде Zend Server с запросами,
504             производимыми через <acronym>HTTP</acronym> и
505             <acronym>HTTPS</acronym>, и не работает в случае скриптов,
506             запускаемых через командную строку.
507         </para>
508         <para>
509             Нет специальных опций для этого бэкэнда.
510         </para>
511     </sect2>
512 </sect1>
513 <!--
514 vim:se ts=4 sw=4 et: