Перейти к основному содержанию
Тест-сервис
Обсудить проект
← все материалы
Сайты 04 июля 2026 9 мин

Почему каталог на Битрикс тормозит: диагностика по шагам

Как измерить медленный каталог и последовательно проверить свойства, умный фильтр, торговые предложения, запросы, кеш и SEO‑страницы.

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

Сначала измерьте, где теряется время

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

Медленно везде проверяем сервер, PHP, базу и общие обработчики
Только каталог смотрим компонент, свойства, цены и остатки
Только фильтр проверяем индекс, фасеты и число комбинаций
Только первый запрос изучаем прогрев и корректность кеша

Измерения выполняйте на копии production‑данных или в согласованное окно. Режимы отладки и подробный SQL‑лог сами создают нагрузку, поэтому их нельзя надолго оставлять на живом магазине.

Проверьте кеш, но не маскируйте им проблему

Кеш компонента полезен, если ключи учитывают раздел, фильтр, цены и права. Слишком широкий сброс кеша делает первый запрос дорогим, а неверный ключ может показать посетителю чужую цену или недоступный ассортимент.

Проблема 1. Слишком много свойств в фильтре

Не каждое свойство должно участвовать в умном фильтре. Если в фильтрации участвуют десятки полей, которые редко нужны пользователю, каталог начинает тормозить и создавать лишние URL.

Проблема 2. Нет дисциплины в свойствах

Одинаковые характеристики могут быть заведены разными способами: строка, список, число, привязка. В результате сортировки, сравнение и фильтры работают нестабильно.

Проблема 3. Торговые предложения разрастаются

SKU удобны, но при неправильной структуре они увеличивают количество запросов, усложняют карточку и остатки. Важно заранее определить, какие параметры являются предложениями, а какие — свойствами товара.

Проблема 4. SEO-посадочные создают дубли

Фильтры могут генерировать тысячи URL, но полезными будут только часть из них. Нужна карта посадочных: какие страницы индексируем, какие закрываем, где задаём title, description и текст.

Диагностическое дерево

  1. Откройте раздел без фильтра. Если он медленный, проверяйте запросы списка, цены, остатки и шаблон карточки.
  2. Добавляйте условия фильтра по одному. Так видно свойство или комбинацию, после которой растёт время ответа.
  3. Сравните гостя и авторизованного пользователя. Разница указывает на права, типы цен, персональные скидки или некорректный кеш.
  4. Проверьте SKU отдельно. Большое число предложений требует пакетной загрузки данных, а не запроса в цикле.
  5. Сверьте URL. Один набор условий не должен бесконтрольно создавать множество индексируемых адресов.

Типовые причины в коде

  • запросы к инфоблоку, цене или остатку внутри цикла товаров;
  • получение всех свойств вместо нужного набора;
  • тяжёлая обработка изображений во время запроса;
  • сортировка по неиндексированному или вычисляемому значению;
  • вызов внешнего сервиса при сборке каждой карточки;
  • сброс общего кеша после изменения одного товара.

Сначала устраните повторяющиеся запросы и лишние данные, затем настраивайте кеш. Иначе ускорение будет кратковременным, а причина останется.

Что проверять при аудите каталога

  • список свойств и их типы;
  • какие свойства участвуют в фильтре;
  • количество торговых предложений;
  • SQL-запросы и кеш компонентов;
  • сортировки и остатки;
  • дубли URL;
  • структуру разделов и посадочных страниц.

Что делать сначала

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

Как проверить результат

Повторите одинаковые сценарии до и после изменения: раздел, фильтр с популярными условиями, сортировка, карточка и добавление в корзину. Зафиксируйте медиану нескольких запусков, корректность цен и остатка, число запросов и отсутствие новых дублей URL.

Оптимизация считается успешной, если ускорился реальный сценарий покупателя, а не только один тестовый URL с прогретым кешем.

Итог Быстрый каталог — это не один параметр кеша, а дисциплина в свойствах, URL, фильтрах и торговых предложениях.