Подключение Memcached в битрикс

Чтобы улучшить производительность высоконагруженных проектов можно к системе под управлением 1C-Битрикс подключить технологию Memcached. Эта технология позволяет кэшировать данные в оперативную память.

В bitrix/php_interface/dbconn.php добавляем:

define("BX_CACHE_TYPE", "memcache");
define("BX_CACHE_SID", $_SERVER["DOCUMENT_ROOT"]."#логин");
define("BX_MEMCACHE_HOST", "127.0.0.1");
define("BX_MEMCACHE_PORT", "11211");

В bitrix/.settings.php добавляем:

'cache' => array(
'value' => array(
'type' => 'memcache',
'memcache' => array(
'host' => '127.0.0.1',
'port' => '11211',
),
'sid' => $_SERVER["DOCUMENT_ROOT"]."#логин"
),
'readonly' => false,
),

Для проверки можно использовать скрипт:

require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_before.php");
$cache = new CPHPCache();
if ($cache->InitCache(3600, '12356356gt' , '/' )) {
echo "cache";
$res = $cache->GetVars();
$arResult = $res['arResult'];
} elseif ($cache->StartDataCache()) {
echo "no cache";
$arResult = array(1,2,3,4,5);
$cache->EndDataCache(array("arResult" => $arResult));
}

Проверка через административную часть:

Рабочий стол — Настройки — Производительность — Панель производительности, во вкладке «Битрикс (оптимально)», в пункте «Хранение кеша» должен быть указан «memcache».

Полезные ссылки:

Похожие записи