Сайт на Битриксе тормозит: причины и способы ускорения

«Битрикс тормозит» — в 9 случаях из 10 это не приговор платформе, а конкретная и находимая причина: выключенный композит, обмены в час пик, слабый сервер или тяжелый фронтенд. Разбираем, как локализовать проблему и что ускоряет Битрикс-сайт сильнее всего.

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

Хорошая новость: причина медленного Битрикса почти всегда находится за один вечер диагностики. Плохая: чинить наугад бесполезно, сначала нужно понять, какой из 3 слоев тормозит.

Шаг 1. Локализуем: сервер, бэкенд или фронтенд

Откройте медленную страницу в Chrome, нажмите F12 → «Сеть», обновите страницу и посмотрите на первую строку (сам HTML-документ).

Если ожидание ответа (TTFB) больше секунды — проблема на стороне сервера или кода: сайт долго генерирует страницу. Дальше разбираемся с композитом, базой и хостингом.

Если HTML прилетает быстро, а страница собирается долго — проблема во фронтенде: картинки, скрипты, шрифты. Это лечится теми же методами, что на любой платформе, — мы разбирали их в статье о проверке скорости.

Если тормозит не все, а моментами — ищите периодические процессы: обмены, агенты, бэкапы в неудачное время.

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

Причины на стороне Битрикса, по частоте

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

2. Агенты и фоновые задачи на хитах. По умолчанию Битрикс выполняет отложенные задачи «на хитах», то есть в момент захода посетителей. Пока задач мало, незаметно; на живом магазине очередь агентов начинает подвешивать случайные запросы. Стандартное лечение — перевод агентов и почтовой очереди на cron.

3. Обмены с 1С в рабочее время. Полная выгрузка каталога на 20 тысяч позиций способна положить сайт на десятки минут. Если менеджеры жалуются, что «сайт умирает после обеда», почти наверняка это расписание обменов. Решение: ночные полные выгрузки, днем только быстрые обмены изменениями.

4. Тяжелые выборки и большой каталог. Умные фильтры по куче свойств, выборки без ограничений, отсутствие фасетных индексов. Симптом: каталог и фильтр тормозят, остальной сайт живой. Лечится включением фасетов, оптимизацией компонентов и запросов.

5. Слабый или неподходящий хостинг. Битрикс плохо живет на дешевом виртуальном хостинге. Ему нужны нормальный запас по памяти, быстрые диски и правильно настроенное окружение (готовый вариант — официальная VMBitrix). Показательный тест: панель «Производительность» в админке Битрикса. Если оценка конфигурации сервера в разы ниже эталонной, никакая оптимизация кода не спасет.

6. Наслоения модулей и доработок. Сайт, который лет 5 дорабатывали разные подрядчики, накапливает выключенные, но не удаленные модули, дублирующие скрипты и обработчики на каждый чих. Здесь быстрых побед нет, нужен разбор.

Что дает быстрый результат

Если ранжировать по соотношению «эффект / трудозатраты», у меня получается так:

  1. включить и отладить композит;
  2. перевести агенты на cron;
  3. перенести полные обмены с 1С на ночь;
  4. сжать картинки и включить ленивую загрузку;
  5. переехать с перегруженного хостинга.

Первые 3 пункта — день работы Битрикс-специалиста. По нашей практике в Design Lab, именно они снимают большую часть жалоб «сайт тормозит», без переписывания кода и смены сервера.

Чего делать не стоит: ставить «ускоряющие» модули поверх ненастроенного сайта и лечить симптомы кешированием всего подряд. Кеш, натянутый на медленный код, дает сайт, который быстро показывает устаревшие цены.

Схема: что быстрее всего ускоряет сайт на 1С-Битрикс
Ранжировано по отдаче: первые 3 пункта закрываются за день работы специалиста.
Возьмем ваш сайт на поддержку
Реакция на аварию до 15 мин., отчет по каждому часу. Оценим объем работ до старта.
Обсудить поддержку

Когда дело все‑таки в платформе

Честности ради: бывают случаи, когда Битрикс-сайт оптимизирован, сервер хороший, а скорость упирается в архитектуру проекта — например, интернет-магазин перерос свою редакцию или изначально был спроектирован без учета объемов. Тогда разговор идет не про «ускорить», а про рефакторинг или переезд на старшую редакцию. Но это диагноз, который ставится после оптимизации, а не вместо нее.

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

Бесплатный аудит вашего сайта
Найдем уязвимости и точки роста за 3 дня и покажем, что чинить в первую очередь.
Получить аудит
Давайте
обсудим проект
  • Разберем задачу и предложим решения
  • Покажем кейсы из вашей отрасли
  • Оценим сроки и бюджет до старта
Алексей Грицук
Алексей Грицук, руководитель
Что вас интересует?
Приложить файлы
Как с вами связаться?
Заявка отправлена!
Спасибо! Ответим в течение рабочего дня — тем способом, который вы выбрали.
Обсудить проект