Оптимизация Битрикс. Как повысить скорость работы сайта. | REDS Group
REDS Group
ул. Большая Академическая, дом 5, стр. 1, Москва.
Оптимизация Битрикс. Как повысить скорость работы сайта.

Оптимизация Битрикс. Как повысить скорость работы сайта.

92

Быстродействие сайта, один из самых важных показателей современного сайта. Считается, если страница сайта прогружается больше 1-й секунды, то сайт работает медленно. Не стоит забывать, что скорость сайта и его качество его разработки связано и с поисковой выдачей. 

Если сайт представляет из себя интернет-магазин либо подобный e-commerce проект, скорость выдачи так же сказывается на конверсии. Человеку проще открыть следующую ссылку в поисковике, нежели ожидать прогрузки медленного сайта, это факт. Как правило, скорость сайта так же может влиять на глубину просмотра, что показывает заинтересованность посетителя/покупателя.

В этой статье мы рассмотрим технические аспекты настройки окружения Битрикс и сайта в целом.

Начнем с чек-листа, на который можно ориентироваться при оптимизации сайта на Битриксе:


  • Битрикс имеет актуальную версию, обновления установлены
  • Сервер поддерживает язык PHP7 и выше
  • На сайте включено кеширование, компоненты сайта настроены на кеширование, настроен кеш фильтров
  • Настройки в мониторе производительности соответствуют рекомендациям
  • Настроен композитный сайт
  • Отключена проверка прав доступа, там где она не нужна (например в каталоге, либо меню)
  • Компоненты работают только с теми свойствами, которые нужны. Лишние свойства не запрашиваются
  • SQL-запросы находятся вне циклов
  • При сбросе кеша на странице должно быть не более 300 запросов в режиме отладки
  • В главном модуле включено объединение CSS и JS файлов
  • Таблицы баз данных оптимизированы и настроены на тип InnoDB
  • Выполнена оптимизация всех изображений сайта
Чек-лист, описанный выше можем использовать при проверке сайта на быстродействие либо перед сдачей проекта.

Приступим к оптимизации!

    1. Создание резервной копии сайта

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

    • Перейдите в раздел /bitrix/admin/dump.php?lang=ru
    • Укажите место и настройки для сохранения копии сайта
    • Кликните "Создать резервную копию"

    • Дождитесь окончания архивации

    2. Пройти проверку конфигурации сайта

    • Перейдите в раздел /bitrix/admin/site_checker.php?lang=ru 
    • Нажмите "Начать тестирование"
    • Дождитесь окончания проверки
    • Исправьте ошибки, которые проявились


    3. Проверка Базы данных

    1. Перейдите в раздел /bitrix/admin/repair_db.php?lang=ru
    2. Нажмите "Проверить / восстановить таблицы"
    3. Дождитесь окончания проверки

    4. Оптимизация Базы данных

    1. Перейдите в раздел /bitrix/admin/repair_db.php?optimize_tables=Y&lang=ru
    2. Нажмите на "Проверить / восстановить таблицы"
    3. Дождитесь окончания проверки

    5. Перевод всех таблиц баз данных в InnoDB

    Данный тип баз данных работает таким образом. Когда делаются запросы к базе данных, работа базы не прекращается, она ведется параллельно. При запросе к БД типа MyISAM во время запроса вся база встает в очередь, что может очень сильно сказываться на скорости выдачи. В InnoDB в очередь блокируется только строка. 

    1. Перейдите в раздел /bitrix/admin/perfmon_tables.php?lang=ru
    2. Выберите все таблицы
    3. Нажмите "Преобразовать в InnoDB» и применить
    4. Дождитесь окончания конвертации



    Внимание! Данный процесс может вызвать высокую нагрузку на сервер, необходимо выполнять данную процедуру при меньшей нагрузке на сайт. Если ваш объем баз данных велик, лучше делать преобразование постепенно.

    6. Проверка конфигурации

    1. Перейдите в раздел /bitrix/admin/perfmon_panel.php?lang=ru
    2. Откройте вкладку "Конфигурация"
    3. Проверьте значение "Конфигурация PHP"
    4. Выполните «Рекомендации». Если рекомендации не выполнены, последствия могут быть критичными.


    7. Проверка настроек 1С-Битрикс

    1. Перейдите в раздел /bitrix/admin/perfmon_panel.php?lang=ru
    2. Откройте вкладку "Битрикс"
    3. Выполните "Рекомендации"

    8. Включаем автокеширование компонентов

    Любой проект на 1С-Битрикс просто обязан иметь включенное автокеширование. Выключенное автокеширование можно приравнять к "преступлению". :) Объяснять почему, думаю не стоит.

    1. Перейдите в раздел /bitrix/admin/cache.php?lang=ru
    2. Во вкладке "Кеширование компонентов" нажмите
    3. "Включить автокеширование"  
    4. Откройте во вкладку "Управляемый кеш"
    5. Нажмите на "Включить управляемый кеш"



    9. Запускаем монитор производительности на один час и находим источники проблем

    Данный инструмент позволит найти страницы, на которые идет самая высокая нагрузка, благодаря чему мы сможем обнаружить проблемные места в запросах, компонентах, логике.
    1. Перейдите в раздел /bitrix/admin/perfmon_panel.php?lang=ru
    2. Из выпадающего списка выберите "в течение 1 часа"
    3. Кликните на кнопку "Тестировать производительность"
    4. Дождитесь окончания тестирования 

    10. Исправление ошибок разработки

    1. Перейдите во вкладку "Разработка"
    2. Кликните на ссылки в столбце "Ошибки разработки"
    3. Откроется информация по незакешированным компонентам 

    11. Настройка кеша компонентов 

    Одна из самых важных настроек компонентов на Битрикс. Кеш должен работать везде, где это возможно.

    1. Открываем публичную часть сайта
    2. Перейдите в режим правки, в левом верхнем углу
    3. Наведите курсор на компонент
    4. Открываем его настройку, нажав на шестеренку
    5. Выберите тип кеширования "Авто + Управляемое"
    6. Время кеширования 36000000 (рекомендуемое значение для компонентов каталога)
    7. Убрать настройку "Учитывать права доступа», если она не нужна
    8. Включите настройку "Кешировать при установленном фильтре" 




    Так же стоит отключать учет прав доступа, если эта опция не нужна. 

    12. Перевести место хранение свойств инфоблоков в отдельные таблицы

    1. Выберите нужный инфоблок /bitrix/admin/iblock_type_admin.php?lang=ru
    2. Откройте редактирование настроек инфоблока 
    3. Нажмите на ссылку "изменить место хранения свойств"
    4. Дождитесь окончания процедуры конвертации 


    Дополнительные рекомендации:
    1. Настройте композитный сайт
    2. Перейдите на PHP7 и выше
    3. Включите оптимизацию CSS и JS
    4. Оптимизируйте изображения, а также JS и  CSS файлы
    5. Создайте фасетный индекс для инфоблоков
    6. Займитесь оптимизацией SQL запросов.
    7. Отключите и удалите неиспользуемые модули

    Спасибо за прочтение статьи! Существует множество рекомендаций, которые следует соблюдать, возможно многие здесь не учтены, мы предлагаем дополнять их комментариями, чтобы сделать эту статью еще более полезной.

12.10.2019 / Садовиков Сергей
Комментарии (0)