Низкая производительность Битрикс — кто виноват и как улучшить показатель?

В связи с участившимися жалобами о производительности Bitrix и его показателях, мы решили показать наглядно работу Bitrix на web-окружении BitrixVM и панелью управления ISPmanager 5.

BitrixVM — это web-окружение CMS Bitrix, которое устанавливает и настраивает все необходимое ПО для корректной и стабильной работы CMS. Также она позволяет управлять сайтом через консоль.

ISPmanager 5 — это панель управления сервером.

Установить BitrixVM вместе с ISPmanager нет возможности по причине конфликта пакетов, поэтому мы провели тесты отдельно.

Тестирование на BitrixVM

Основные параметры тестирования:

  • Тестирования проводились на Bitrix Малый бизнес
  • Конфигурация сервера была выставлена согласно тарифу — Start
  • Никаких дополнительных настроек мы не вносили. Все параметры и конфигурации находятся в стандартном виде.

Т.к BitrixVM позиционируется как оптимальное решение для CMS Bitrix, будем отталкивался от его показателей.

ПО, которое было изначально при установке BitrixVM

  • MySQL 5.7
  • PHP 7.1
  • Nginx + Apache
Производительность BitrixVM

Видим, что производительность в BitrixVM выше, чем эталон*. Проверим отклик сервера через GooglePageSpeed:

*Эталоном называется виртуальная машина с 256 Мб ОЗУ, работающая на одном процессоре.

Производительность BitrixVM для мобильных
Производительность BitrixVM для мобильных
Производительность BitrixVM для ПК
Производительность BitrixVM для ПК

Видим, что показатели Bitrix и его скорость работы на BitrixVM выше, чем эталон от разработчиков. Но нам необходимо сравнить скорость работы Bitrix, который будет установлен в панели управлении ISPmanager 5.

Тестирование на ISPmanager 5

ПО, которые было установлено при установке сервера с ISPmanager 5:

  • MariaDB 10.3
  • PHP 5.6-7.3
  • Apache (Nginx + Apache)

Мы начнем тестирование с режима работы PHP — Apache, т.к такой же режим работы установлен в web-окружении BitrixVM.

Тестирование в режиме php 5.6 + Apache
Тестирование в режиме php 5.6 + Apache

Видим, что производительность ниже, чем Эталон. Это связано с устаревшей версий php. Проверим отклик сайта через GoogleSpeed

Тестирование для мобильных в режиме php 5.6 + Apache
Тестирование для мобильных в режиме php 5.6 + Apache
Тестирование для ПК в режиме php 5.6 + Apache
Тестирование для ПК в режиме php 5.6 + Apache

Т.к ПО уже устарело и рекомендованная версия php для Bitrix PHP 7.1, мы протестируем работу сайта и на ней:

php 7.1 + режим работы Apache
Тестирование для ПК в режиме php 7.1 + Apache
Тестирование для мобильных php 7.1 + режим работы Apache
Тестирование для мобильных php 7.1 + режим работы Apache
Тестирование для ПК (php 7.1 + режим работы Apache)
Тестирование для ПК (php 7.1 + режим работы Apache)

Видим, что при такой версии php, производительность Bitrix выше, чем на BitrixVM, при этом, отклик сайта больше. Мы также решили протестировать версию php 7.3:

Тестирование Битрикс php 7.3 + режим работы Apache
Тестирование Битрикс php 7.3 + режим работы Apache
Тестирование Биткис для мобильных php 7.3 + режим работы Apache
Тестирование Биткис для мобильных php 7.3 + режим работы Apache
Тестирование Битрикс для для ПК (php 7.3 + режим работы Apache)
Тестирование Битрикс для для ПК (php 7.3 + режим работы Apache)

Видно, что производительность больше в 2 раза относительно BitrixVM, но при этом отклик сайта больше.

Сейчас мы протестируем работу сайта при режиме работы Nginx + PHP-fpm. Тестировать php5.6 мы уже не будем, а сразу приступим к тестированию php 7.1.

  • MariaDB 10.3
  • PHP 7.1-7.3
  • FastCGI (Nginx + PHP-fpm)
Тестирование Битрикс на php 7.1 + режим работы FastCGI
Тестирование Битрикс на php 7.1 + режим работы FastCGI
Тестирование Битрикс для мобильных (php 7.1 + режим работы FastCGI)
Тестирование Битрикс для мобильных (php 7.1 + режим работы FastCGI)
Тестирование Битрикс для ПК (php 7.1 + режим работы FastCGI)
Тестирование Битрикс для ПК (php 7.1 + режим работы FastCGI)

Снова видим, что производительность Bitrix больше, чем на BitriVM, но при этом отклик сайта немного больше. Протестируем работу сайта при версии php 7.3:

Тестирование Битрикс php 7.3 + режим работы FastCGI
Тестирование Битрикс php 7.3 + режим работы FastCGI
Тестирование Битрикс для мобильных (php 7.3 + режим работы FastCGI)
Тестирование Битрикс для мобильных (php 7.3 + режим работы FastCGI)
Тестирование Битрикс для ПК (php 7.3 + режим работы FastCGI)
Тестирование Битрикс для ПК (php 7.3 + режим работы FastCGI)

После тестирования видно, что производительность Bitrix больше на режиме работы FastCGI (nginx + php-fpm), и отклик сервера примерно такой же, как на BitrxiVM.

Исходя из результатов вышеприведенных тестов, можно сказать, что режим работы FastCGI более производительный, нежели режим Apache. Но у данного режима работы, есть минусы:

  1. Не будет работать файл .htaccess
  2. Для сайта на Bitrix, необходим будет редирект nginx, чтобы все странички работали, т.к если не приписать такой редирект, страницы будут отдавать 404 ошибку.

Сравнение отклика сервера для платформы пк:

ПКВремя загрузки первого контентаИндекс скорости загрузкиВремя загрузки для взаимодействияВремя загрузки достаточной части контентаВремя окончания работы ЦПВремя окончания работы ЦП
PHP 7.1 (BitrixVM)1.0 сек1.2 сек1.4 сек1.1 сек1.1 сек50 мс
PHP 7.1 (Apache)1.0 сек1.4 сек1.4 сек1.2 сек1.2 сек70 мс
PHP 7.1 (FastCGI)1.0 сек1.4 сек1.5 сек1.0 сек1.2 сек80 мс
PHP 7.3 (Apache)1.0 сек1.3 сек1.4 сек1.2 сек1.2 сек50 мс
PHP 7.3 (FastCGI)1.0 сек1.2 сек1.4 сек1.0 сек1.1 сек70 мс

Сравнение отклика сервера для мобильной платформы:

мобильнаяВремя загрузки первого контентаИндекс скорости загрузкиВремя загрузки для взаимодействияВремя загрузки достаточной части контентаВремя окончания работы ЦПВремя окончания работы ЦП
PHP 7.1 (BitrixVM)3.3 сек3.8 сек6.3 сек3.3 сек4.7 сек230 мс
PHP 7.1 (Apache)3.4 сек3.7 сек6.7 сек3.4 сек5.1 сек270 мс
PHP 7.1 (FastCGI)3.4 сек3.6 сек6.7 сек3.4 сек5.2 сек260 мс
PHP 7.3 (Apache)3.4 сек3.8 сек6.7 сек3.4 сек5.1 сек250 мс
PHP 7.3 (FastCGI)3.4 сек3.5 сек6.6 сек3.4 сек5.1 сек220 мс

Сравнение производительности Bitrix:

PHPПроизводительность Bitrix
PHP 5.6 (Apache)8.76
PHP 7.1 (BitrixVM)41.25
PHP 7.1 (Apache)55.35
PHP 7.3 (Apache)90.54
PHP 7.1 (FastCGI)93.95
PHP 7.3 (FastCGI)161

Вывод:

После проведенных тестов мы можем сделать вывод, что режим работы FastCGI работает быстрее чем Apache, но при этом для корректной работы сайта на FastCGI необходимо настраивать и оптимизировать работу сервера.

Мы предлагаем нашим клиентам оптимальные тарифы VPS серверов для BitrixVM и всегда следим за производительностью системы.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *