123  /  175

Настройка memcached

Просмотров: 778 (Статистика ведётся с 06.02.2017)
Дата последнего изменения: 26.10.2015

Внимание! Для операций, описанных в данном уроке, необходимы знания администрирования *nix-систем. Перед началом проведения данных операций рекомендуется сделать полный бекап «Виртуальной машины».


В случае, если в проекте планируется использовать memcached, необходимо произвести его настройку в соответствии с предполагаемой нагрузкой.

Для этого необходимо:

  • в файле /etc/sysconfig/memcached задать следующие параметры:
    • MAXCONN = "1024" - количество одновременных подключений (по умолчанию 1024);
    • CACHESIZE="1024" - объем выделяемой памяти для кеша (по умолчанию 64MB);
    • OPTIONS="t 8" - количество потоков memcached (по умолчанию 4).
  • Примечание: Параметры MAXCONN, CACHESIZE и OPTIONS подбираются экспериментальным путем в зависимости от характера нагрузки и от имеющихся ресурсов.

    Оценить объем памяти, необходимой для кеширования (параметр CACHESIZE), можно по размеру вашего файлового кеша. Если у вас на проекте файловый кеш занимает 3 GB, то использование memcache c 256МБ памяти не будет эффективным за счет частого вытеснения.

  • После настройки memcaсhe необходимо перезапустить командой:
    service memcached restart
    
  • Далее подключить его в bitrix/php_intarface/dbconn.php:

    define("BX_CACHE_TYPE", "memcache");
    define("BX_CACHE_SID", $_SERVER["DOCUMENT_ROOT"]."#01");
    define("BX_MEMCACHE_HOST", "127.0.0.1");
    define("BX_MEMCACHE_PORT", "11211");
    

В случае, если используется один сервер, то для улучшения производительности можно настроить работу с memcache через сокет:

  • USER="bitrix" - пользователь, от которого будет запущен memcache;
  • OPTIONS="-t 8 -s /tmp/memcached.sock" - количество потоков и путь к сокету.

После этого необходимо изменить настройки в bitrix/php_interface/dbconn.php:

define("BX_CACHE_TYPE", "memcache");
define("BX_CACHE_SID", $_SERVER["DOCUMENT_ROOT"]."#01");
define("BX_MEMCACHE_HOST", "unix:///tmp/memcached.sock");
define("BX_MEMCACHE_PORT", "0");

0
Курсы разработаны в компании «1С-Битрикс»

Если вы нашли неточность в тексте, непонятное объяснение, пожалуйста, сообщите нам об этом в комментариях.
Развернуть комментарии