Если вы задумались о повышении производительности вашего сайта на CMS Битрикс, в первую очередь необходимо перенести сайт на сервер с BitrixVM 9. Создать сервер с системой BitrixVM 9 можно в вашей панели управления.
Вы можете выполнить перенос самостоятельно или обратиться к нашим специалистам. Все подробности можно найти в статье Перенос сайта на сервер.
После переноса сайта можно приступить к настройке CMS.
Далее можно перейти к настройке сервера.
~/menu.sh
memcached
. В процессе установки будет запрошен hostname вашего сервера — необходимо указать значение ServerName
из выведенной на экране таблицы./etc/sysconfig/memcached
.Откройте файл в текстовом редакторе, например, nano
:
nano /etc/sysconfig/memcached
Если nano
отсутствует, можно установить его командой dnf install nano
либо использовать имеющийся на сервере редактор (например, vim).
Задайте следующие параметры:
# количество одновременных подключений (по умолчанию 1024)
MAXCONN = "1024"
# объем выделяемой памяти для кэша (по умолчанию 64MB)
CACHESIZE="1024"
# количество потоков memcached
OPTIONS="-t 4"
Сохраните изменения.
systemctl restart memcached.service
memcached
в файле /bitrix/php_interface/dbconn.php
. Для этого откройте файл:nano /путь_к_каталогу_сайта/bitrix/php_interface/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");
Сохраните изменения.
/bitrix/.settings_extra.php
(если файл пока не существует, этой же командой он будет создан):nano /путь_к_каталогу_сайта/bitrix/.settings_extra.php
Укажите в нем следующие параметры:
<?php
return array(
'cache' => array(
'value' => array(
'type' => 'memcache',
'memcache' => array(
'host' => '127.0.0.1',
'port' => '11211',
),
'sid' => $_SERVER["DOCUMENT_ROOT"]."#01"
),
),
);
?>
Сохраните изменения.
Обратите внимание, что некорректная настройка
memcached
может негативно влиять на показатели производительности. Если вы наблюдаете снижение индекса производительности, можно поэкспериментировать со значениями в конфигурационном файле/etc/sysconfig/memcached
, который настраивался на шаге 5.
memcached
, ускорить работу сайта можно путем переноса каталога для временных файлов MySQL в RAM-диск.Для этого выполните следующие действия:
9.1. Создайте папку для хранения временных файлов, например, /var/lib/mysql/tmp
:
mkdir /var/lib/mysql/tmp
9.2. Измените владельца папки и группу на mysql
:
chown mysql:mysql /var/lib/mysql/tmp
9.3. Определите идентификатор пользователя (uid) и группы (gid) mysql
:
id mysql
9.4. Отредактируйте файл /etc/fstab
:
nano /etc/fstab
В самый конец файла добавьте строку с указанием полученных выше значений:
tmpfs /var/lib/mysql/tmp tmpfs rw,gid=27,uid=27,size=1G,nr_inodes=10k,mode=0700 0 0
Параметр size необходимо установить в зависимости от количества имеющейся оперативной памяти.
9.5. Примонтируйте новый tmpfs-раздел:
mount /var/lib/mysql/tmp
9.6. В файл конфигурации MySQL /etc/mysql/my.cnf
добавьте строку:
tmpdir=/var/lib/mysql/tmp
9.7. Перезапустите MySQL:
systemctl restart mysqld
/etc/mysql/conf.d/z_bx_custom.cnf
добавьте параметр:innodb_flush_log_at_trx_commit = 0
Данный параметр позволит использовать отложенные транзакции.