НАСТРОЙКИ / Настройка memcahe

Заметка создана: 15 января 2025 г.
в секции memcahe указываются данные доступа к серверу:
modules/core/config/cache.php
PHP
'memcache' => array(
'name' => 'Memcache',
'driver' => 'Cache_Memcache',
'server' => '127.0.0.1',
'port' => 11211,
'checksum' => FALSE,
'caches' => $aTypicalCaches,
),
а в 'defaultCache' указываете 'memcache'
PHP
<?php
return array (
'skin' => 'bootstrap',
'dateFormat' => 'd.m.Y',
'dateTimeFormat' => 'd.m.Y H:i:s',
//'reverseDateTimeFormat' => '',
'datePickerFormat' => 'DD.MM.YYYY',
'dateTimePickerFormat' => 'DD.MM.YYYY HH:mm:ss',
'timezone' => 'Europe/Moscow',
'translate' => TRUE,
'chat' => FALSE,
'switchSelectToAutocomplete' => 100,
'autocompleteItems' => 10,
'backendSessionLifetime' => 14400,
'availableExtension' => array ('JPG', 'JPEG', 'GIF', 'PNG', 'WEBP', 'PDF', 'ZIP', 'DOC', 'DOCX', 'XLS', 'XLSX'),
'defaultCache' => 'file',
'session' => array(
'driver' => 'database',
'class' => 'Core_Session_Database'
),...

Конфигурационный файл

Конфигурационный файл размещается в modules/core/config/cache.php и содержит переменную $aTypicalCaches с массивом имен кэшей и их конфигурациями, например:

PHP

$aTypicalCaches = array(
'default' => array('expire' => 3600, 'size' => 262144, 'tags' => FALSE),
'Core_ORM' => array('expire' => 3600, 'size' => 262144, 'tags' => FALSE),
'Core_ORM_ColumnCache' => array('expire' => 3600, 'size' => 262144, 'tags' => FALSE),
'Core_ORM_RelationCache' => array('expire' => 3600, 'size' => 262144, 'tags' => FALSE),
'informationsystem_rss' => array('expire' => 14400, 'size' => 262144),
'informationsystem_show' => array('expire' => 14400, 'size' => 262144, 'compress' => TRUE),
'informationsystem_tags' => array('expire' => 14400, 'size' => 262144, 'compress' => TRUE),
'shop_show' => array('expire' => 14400, 'size' => 262144, 'compress' => TRUE),
'shop_tags' => array('expire' => 14400, 'size' => 262144, 'compress' => TRUE),
'search' => array('expire' => 14400, 'size' => 262144, 'tags' => FALSE),
'structure_breadcrumbs' => array('expire' => 14400, 'size' => 262144),
'structure_show' => array('expire' => 14400, 'size' => 262144, 'compress' => TRUE),
'counter_allSession' => array('expire' => 1800, 'size' => 1024, 'tags' => FALSE),
);
Индексом элемента массива является имя кэша, значением - массив опций, где:
  • expire — время жизни закэшированного элемента, указывается в секундах;
  • size — максимальный размер кэшируемого элемента, указывается в байтах;
  • tags — использовать теггирование кэша, по умолчанию TRUE;
  • compress — сжимать значение перед сохранением в кэш, по умолчанию FALSE.
Далее конфигурационный файл возвращает массив со списком доступных хранилищ кэша, например:
PHP
return array (
'memory' => array(
'name' => 'Memory',
'driver' => 'Core_Cache_Memory',
'caches' => array(
'default' => array()
),
),
'file' => array(
'name' => 'File',
'driver' => 'Cache_File',
'checksum' => FALSE,
'caches' => $aTypicalCaches,
),
'eaccelerator' => array(
'name' => 'eAccelerator',
'driver' => 'Cache_Eaccelerator',
'checksum' => TRUE,
'caches' => $aTypicalCaches,
),
'apc' => array(
'name' => 'APC',
'driver' => 'Cache_APC',
'checksum' => TRUE,
'caches' => $aTypicalCaches,
),
'memcache' => array(
'name' => 'Memcache',
'driver' => 'Cache_Memcache',
'server' => '127.0.0.1',
'port' => 11211,
'checksum' => FALSE,
'caches' => $aTypicalCaches,
),
'xcache' => array(
'name' => 'XCache',
'driver' => 'Cache_XCache',
'checksum' => TRUE,
'caches' => $aTypicalCaches,
),
'static' => array(
'name' => 'Static',
'driver' => 'Cache_Static',
'caches' => array(
'default' => array('expire' => 3600, 'size' => NULL),
),
),);
где индексом является уникальное название кэша, а значением массив опций, например:
  • name — текстовое название вида кэширования;
  • driver — имя драйвера, осуществляющего работу с кэшем. Файлы дополнительных драйверов располагаются в директории modules/cache/;
  • checksum — сохранять контрольную сумму кэшируемого объекта и проверять ее при извлечении элемента из кэша, позволяет исключить извлечение поврежденных данных;
  • caches — массив доступных кэшей, чаще всего подставляется переменная $aTypicalCaches.

Конфигурационный файл

Конфигурационный файл размещается в modules/core/config/config.php и содержит следующие настройки:
  • skin — шаблон центра администрирования, по умолчанию 'bootstrap';
  • dateFormat — формат даты, по умолчанию 'd.m.Y';
  • dateTimeFormat — формат даты-времени, по умолчанию 'd.m.Y H:i:s';
  • timezone — временная зона, по умолчанию 'Europe/Moscow';
  • translate — использовать в пути элемента перевод, по умолчанию TRUE. В случае указания FALSE используется транслитерация;
  • chat — использовать чат между пользователями в центре администрирования, по умолчанию TRUE;
  • switchSelectToAutocomplete — количество элементов, при которых большие списки переключать на автоподстановку, по умолчанию 100. Используется, например, при выборе группы для товаров и информационных элементов;
  • autocompleteItems — количество элементов, предлагаемых в автоподстановке, по умолчанию 10;
  • availableExtension — массив расширений файлов, разрешенных для загрузки в атрибуты элементов центра администрирования. При указании дополнительных элементов не забывайте указывать их в верхнем регистре;
  • defaultCache — вид кэширования по умолчанию;
  • fileIcons — массив соответствий расширений файлов и иконок.

PHP . config.php

<?php
return array (
'skin' => 'bootstrap',
'dateFormat' => 'd.m.Y',
'dateTimeFormat' => 'd.m.Y H:i:s',
//'reverseDateTimeFormat' => '',
'datePickerFormat' => 'DD.MM.YYYY',
'dateTimePickerFormat' => 'DD.MM.YYYY HH:mm:ss',
'timezone' => 'Europe/Moscow',
'translate' => TRUE,
'chat' => FALSE,
'switchSelectToAutocomplete' => 100,
'autocompleteItems' => 10,
'backendSessionLifetime' => 14400,
'availableExtension' => array ('JPG', 'JPEG', 'GIF', 'PNG', 'PDF', 'ZIP', 'DOC'),
'defaultCache' => 'file',
'adminMenu' => array(
0 => array(
'image' => '/admin/images/structure.gif'
),
1 => array(
'image' => '/admin/images/service.gif'
),
2 => array(
'image' => '/admin/images/users.gif'
),
3 => array(
'image' => '/admin/images/system.gif'
)
),
'fileIcons' => array(
'sql' => 'sql.gif',
'txt' => 'txt.gif',
'htaccess' => 'config.gif',
'css' => 'css.gif',
'php' => 'php.gif',
'php3' => 'php.gif',
'jpg' => 'jpg.gif',
'jpeg' => 'jpg.gif',
'gif' => 'gif.gif',
'bmp' => 'bmp.gif',
'png' => 'png.gif',
'ico' => 'image.gif', //
'htm' => 'html.gif',
'html' => 'html.gif',
'xml' => 'xml.gif', //
'xsl' => 'xsl.gif',
'zip' => 'zip.gif',
'gz' => 'zip.gif',
'7z' => 'zip.gif',
'rar' => 'rar.gif',
'pdf' => 'pdf.gif',
'doc' => 'doc.gif',
'docx' => 'doc.gif',
'cdr' => 'vector.gif',
'ai' => 'vector.gif',
'eps' => 'vector.gif',
'rb' => 'rb.gif',
'ppt' => 'ppt.gif',
'pptx' => 'ppt.gif',
'pptm' => 'ppt.gif',
'mdb' => 'mdb.gif',
'h' => 'h.gif',
'fh1' => 'fh1.gif',
'fh2' => 'fh2.gif',
'fh3' => 'fh3.gif',
'fh4' => 'fh4.gif',
'fh5' => 'fh5.gif',
'fh6' => 'fh6.gif',
'fh7' => 'fh7.gif',
'fh8' => 'fh8.gif',
'fh9' => 'fh9.gif',
'fla' => 'flash.gif',
'swf' => 'flash.gif',
'xls' => 'xls.gif',
'cpp' => 'cpp.gif',
'chm' => 'chm.gif'
));