Статус партнерства с 1С-Битрикс: Бизнес партнер
  • Маркетплейс
  • Документация
  • Блог
  • Новости
  • Софт
  • Профиль
  • Поиск причин низкого быстродействия Битрикс

    05.12.2017

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

    Сервер

    Администрирование - Настройки - Инструменты - Проверка системы. Здесь не должно быть значений выделенных красным цветом.

    Администрирование - Настройки - Производительность - Сервер БД. Здесь не должно быть значений выделенных красным цветом.

    Администрирование - Настройки - Производительность - Панель производительности - Вкладка Конфигурация - Тестировать конфигурацию. Здесь стоит обратить внимание на параметры ниже эталонных. Среди прочих в таблице есть строка "Конфигурация" в которой отображаются некие битрикс-попугаи они сильно зависят от сервера, а от Вашего проекта единственное, что может негативно повлиять, это плохо организованный init.php. Для серверов с PHP 5.6 и ниже этот показатель ниже 30 - признак плохо сконфигурированного сервера, для PHP7 и выше плохой уровень уже около 50 битрикс-попугаев.

    Администрирование - Настройки - Производительность - Панель производительности - Вкладка Битрикс. Здесь не должно быть написано "Не оптимально"

    Администрирование - Настройки - Производительность - Панель производительности - Вкладка Масштабируемость. Запустите тестирование. Показатели сильно зависят и от сервера и от качества разработки вашего проекта. Здесь обратите внимание на график. Если график имеет много глубоких провалов - это, скорее всего, показатель не качественного хостинга.

    Настройки сайта

    Администрирование - Настройки - Настройки продукта - Настройки модулей - Главный модуль - блок "Оптимизация CSS". Желательно, чтобы были включены все опции. Как правило, их отключают если в скриптах есть косяки. После включения проверьте работу функционала сайта.

    Администрирование - Настройки - Настройки продукта - Автокеширование. Кеширование компонентов и управляемый кеш должны быть включены. Отключением этого функционала некоторые горе-разработчики скрывают ляпы разработки. Если вам разработчик заявляет "этот функционала сырой, глючный и ненужный", то сразу гоните его от своего проекта - это дилетант. Кеш не нужен только в одном случае - весь контент вашего сайта ежесекундно полностью изменяется. После включения проверяйте сайт - заходите по несколько раз на каждый тип страниц и смотрите весь ли контент на месте (включая заголовки страницы, meta-теги).

    Администрирование - Настройки - Настройки продукта - Композитный сайт - Настройки. Этот функционал желательно включать. Иногда при включении проявляются косяки верстки (например не закрытые теги).

    Модули

    Данный блок лучше тестировать на копии сайта и перед повторением на боевом - не забывайте выполнять резервное копирование.

    Администрирование - Настройки - Настройки продукта - Модули. При развертывании Битрикс активирует все модули, чтобы сразу работал весь функционал. На конкретном проекте некоторые модули могут не использоваться. На этой странице можно отключить не нужны. Только проверяйте работоспособность после отключения или пропускайте если не уверены в назначении.

    Администрирование - Marketplace - Установленные решения. Здесь так же могут быть лишние модули, особенно на проектах с историей где сменилось много разработчиков. Оставшиеся модули так же стоит оценить на качество кода. К сожалению встречаются написанные крайне безграмотно.

    Настройки компонентов и выявление тяжелых

    Режим отладки. В публичной части сайта, авторизовавшись пользователем с правами администратора. На панели инструментов Битрикс нажмите "Отладка". Около каждого компонента и для все страницы будет отображено время выполнения и количество запросов. Запросы можно просмотреть. После этого сбросить кеш (кнопкой на панели), и опять оценить параметры. В первом случае, данные берутся из кеша, во втором кеш создается. Следовательно, тут можно оценить настройку кеширования. В первом случае запросов должно быть на страницу значительно меньше ем во втором. На компоненты с большим числом запросов и временем исполнения следует обратить внимание.

    Тестирование производительности

    Администрирование - Настройки продукта - Настройки модулей - Монитор производительности. Включаете Вести журнал медленных запросов, предупреждения PHP. Запускаете тестирование чем дольше тем лучше - главное чтоб посетители были и сами пройдитесь по всему сайту. По прошествии времени можно оценивать результаты.

    Администрирование - Настройки - Производительность - Индексы - Анализ индексов. Здесь собраны запросы для которых существуют индексы или система посчитала эти индексы полезными. По клику на каждой строке можно перейти в детальный анализ запроса. Там можно посмотреть как индекс система предлагает создать и какое время без него. Вы можете его создать либо указать, чтоб система больше не предлагала. Если вы не разбираетесь в этом: можете создавать индекс и сравнивать время с ним и без него. В большинстве случаев индексы предлагаются дельные.

    Администрирование - Настройки - Производительность - Кеширование. Здесь стоит обратить внимание на компоненты создающие большой по размеру кеш.

    Администрирование - Настройки - Производительность - Ошибки PHP. Здесь желательно избавиться от всех ошибок. К сожалению среди записей много нотисов от ядра.

    Анализ времени отдачи страницы

    Администрирование - Настройки - Производительность - Скорость сайта. Здесь время работы сайта стоит оценивать в динамике. Утрировано говоря если у вас долго не было посетителей, а потом зашла 1000 из тундры с допотопных телефонов через GPRS. Скорость будет очень низкой. Более информативным на этой странице является график "Последние посещения сайта". Здесь можно увидеть на чем теряется время при загрузке странице в браузере посетителя. Так, например, большое время на "Обработку HTML" стоит уделить внимание оптимизации верстки.

    Все записи

    © 2001-2017 Воробьев Александр