This repository has been archived by the owner on Sep 9, 2020. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 93
Настройка кэширования
John edited this page Feb 21, 2017
·
1 revision
Настройка производится в файле настроек .settings.php (/bitrix/.settings.php
). Подробнее о файле настроек
Пример:
/*Отвечает за кэширование*/
'cache' =>
array (
'value' =>
array (
'type' => 'memcache', /*memcache, apc, xcache, files, none*/
'sid' => '',
'memcache' =>
array (
'host' => '127.0.0.1',
),
),
'readonly' => false,
),
-
readonly
ключ означает, что нельзя изменить значение через API. -
type
принимает значенияmemcache
,apc
,xcache
,files
,none
или массив настроек для собственного кэширования. -
sid
- обязательно определять, если на одном сервере запущено более одного экземпляра "1С-Битрикс: Управление сайтом". Это соль которая будет подмешана ко всем ключам кеша. И позволит им "не перепутаться".
Доступны следующие виды кэширования:
- memcache (кэширование, основанное на оперативной памяти)
- apc (акселератор для PHP)
- xcache (акселератор для PHP)
- files (кэширование, основанное на файлах)
- none (не использовать кэширование)
Пример:
'cache' =>
array (
'value' =>
array (
'type' => 'files'
),
'readonly' => false,
),
Использует в качестве хранилища кеша диск. Это полностью совместимое поведение. При неудачных попытках включения других типов кеша будет использован именно этот тип.
Пример:
'cache' =>
array (
'value' =>
array (
'type' => 'apc',
'sid' => $_SERVER["DOCUMENT_ROOT"]."#01"
),
'readonly' => false,
),
Пример:
'cache' =>
array (
'value' =>
array (
'type' => 'xcache',
'sid' => $_SERVER["DOCUMENT_ROOT"]."#01"
),
'readonly' => false,
),
Пример:
'cache' =>
array (
'value' =>
array (
'type' => 'memcache',
'memcache' => array(
'host' => '127.0.0.1',
'port' => '11211'
),
'sid' => $_SERVER["DOCUMENT_ROOT"]."#01"
),
'readonly' => false,
),
-
host
- tcp. Указывается адрес сервера
memcache
, например127.0.0.1
. Что означает, что демон запущен на этом же сервере. - socket. Или указывается сокет, например
unix:///tmp/memcached.sock
- tcp. Указывается адрес сервера
-
port
. По умолчанию 11211 - можно не указывать
Чтобы использовать тип кэширования, который не поддерживается системой или использовать свой тип кэширования, нужно задать массив настроек в ключе type
:
'cache' =>
array (
'value' =>
array (
'type' => array(
'class_name' => '', //Класс реализующий интерфейс ICacheEngine
'required_file' => '', //Файл относительно папки local или bitrix
'required_remote_file' => '', //Абсолютный путь к файлу
'extension' => '' //Подключение через extension_loaded (имя расширения)
),
),
'readonly' => false,
),
-
readonly
- ключ означает, что нельзя изменить значение через API. -
class_name
- класс реализующий интерфейсICacheEngine
(вместе с namespace). -
required_file
- Файл относительно папкиlocal
илиbitrix
(который нужно подключить для реализации технологии кэша). -
required_remote_file
- Абсолютный путь к файлу (Если файл находится вне папкиlocal
илиbitrix
). -
extension
- Расширение php, которое должно быть включено.