Повышение производительности CMS Битрикс
Для повышения производительности сайта на CMS Битрикс рекомендуется перенести его на сервер с панелью управления BitrixVM.
Заказать виртуальный или выделенный сервер с панелью BitrixVM Вы можете на нашем сайте.
При заказе виртуального или выделенного сервера с панелью BitrixVM при подключении стандартного администрирования наши специалисты бесплатно перенесут все ваши сайты. Также Вы можете выполнить перенос сайтов самостоятельно.
Настройка CMS Битрикс
1. В разделе Проверка системы все записи должны быть указаны корректно, без ошибок.
2. В разделе Панель производительности во вкладке Битрикс установите значение Битрикс (оптимально).
3. Тип таблиц БД установите InnoDB. Также рекомендуется выполнить оптимизацию БД. Предварительно создайте резервную копию.
Настройка сервера
1. Подключитесь к серверу по ssh под root.
2. Для запуска виртуального окружения BitrixVM выполните:
~/menu.sh |
3. Нажмите 4 Configure memcahed servers.
4. Далее будет выполнена установка memcached. В процессе при запросе hostname сервера укажите ServerName из выведенной на экране таблицы.
5. Далее откройте файл конфигурации /etc/sysconfig/memcached:
vi /etc/sysconfig/memcached |
По умолчанию в BitrixVM используется редактор vi.
Также Вы можете установить более распространенный и привычный редактор nano. Для этого выполните команду:
yum install -y nano |
Чтобы открыть файл конфигурации /etc/sysconfig/memcached с помощью редактора nano введите:
nano /etc/sysconfig/memcached |
6. В открытом файле конфигурации задайте следующие параметры:
# количество одновременных подключений (по умолчанию 1024) MAXCONN = "1024"
# объем выделяемой памяти для кэша (по умолчанию 64MB) CACHESIZE="1024"
# количество потоков memcached OPTIONS="-t 4" |
Сохраните в файле изменения.
7. Для перезагрузки службы выполните:
systemctl restart memcached.service |
8. Откройте файл /bitrix/php_interface/dbconn.php :
nano /путь/к/сайту/bitrix/php_interface/dbconn.php |
/путь/к/сайту/ в Bitrix 7 это как правило /home/bitrix/www/
9. Для подключения memcached в файле установите следующие параметры:
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"); |
Сохраните внесенные в файл изменения.
10. Откройте файл /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 (шаг 6).
Для ускорения работы сайта также рекомендуется перенести директорию для временных файлов MySQL в RAM-диск.
1. Создайте папку для временных файлов:
mkdir /var/lib/mysql/tmp |
2. Установите владельца и группу папки:
chown mysql:mysql /var/lib/mysql/tmp |
3. Для того чтобы узнать идентификаторы пользователя и группы mysql (uid и gid) введите:
id mysql |
4. Откройте файл /etc/fstab:
nano /etc/fstab |
5. В конце файла добавьте строку:
tmpfs /var/lib/mysql/tmp tmpfs rw,gid=27,uid=27,size=2G,nr_inodes=10k,mode=0700 0 0 |
|
При установке size учитывайте имеющийся объем оперативной памяти.
6. Примонтируйте раздел:
mount /var/lib/mysql/tmp |
7. Добавьте строку в файле конфигурации MySQL /etc/mysql/my.cnf/:
tmpdir=/var/lib/mysql/tmp |
8. Для перезагрузки MySQL введите:
systemctl restart mysqld |
Для использования отложенных транзакций откройте файл /etc/mysql/conf.d/z_bx_custom.cnf и добавьте в него:
innodb_flush_log_at_trx_commit = 0 |
Если у Вас остались вопросы - создайте тикет в техподдержку.