-
Сценарий
Каталог, фильтр или корзина
-
Запрос
Ожидание и внешние зависимости
-
Участок
Сервер, база или браузер
-
Повтор
Те же условия и верный результат
Если магазин на Битрикс работает медленно, начните с воспроизводимого действия: открыть категорию, применить фильтр или изменить количество в корзине. Запишите страницу, устройство, состояние входа и время проверки. Затем отделите ожидание ответа сервера от загрузки ресурсов и работы браузера. Оценка одной главной страницы не объясняет задержку оформления заказа.
До изменения кеша, хостинга или кода сохраните исходные измерения. Сделайте несколько повторов в одинаковых условиях и отметьте разброс. Один быстрый запуск после очистки проблемы не подтверждает результат, а один медленный на перегруженном компьютере не доказывает вину сервера.
Выберите три сценария для диагностики
Первый — категория с характерным для магазина количеством товаров и свойств. Второй — фильтрация этой категории по двум важным условиям. Третий — изменение количества в корзине с пересчётом итогов. Добавьте мобильное устройство и обычного покупателя без прав администратора. Персональные цены и авторизация могут менять путь выполнения.
Укажите, какое действие считается завершённым. Для категории это появление доступного списка, для фильтра — обновлённые товары и число результатов, для корзины — корректные количество и итог. Если измерять только исчезновение индикатора загрузки, можно пропустить последующую работу интерфейса или ошибку расчёта.
| Поле | Что записать |
|---|---|
| URL и действие | Точный адрес, выбранные свойства, изменение количества |
| Контекст | Устройство, сеть, роль, регион, состав корзины |
| Начальное состояние | Первый или повторный запрос, состояние кеша |
| Наблюдение | Ожидание сервера, ресурсы, интерфейс, ошибки |
| Подтверждение | Время, обезличенная запись и журнал изменений |
Отделите серверную задержку от браузерной
Во вкладке сети инструментов разработчика найдите запрос, который отвечает за действие. Посмотрите, где проходит время: до первого ответа, при передаче большого объёма данных или уже после завершения сети. Проверьте, не выполняется ли цепочка последовательных запросов, каждый из которых ждёт предыдущий.
Если HTML приходит быстро, а страница долго становится доступной для взаимодействия, изучайте изображения, стили, JavaScript и сторонние виджеты. Если долго ожидается сам ответ каталога, начните с серверного выполнения и запросов к базе. Эти проблемы могут сочетаться, поэтому сохраняйте доказательства по каждому участку.
Не отключайте на рабочем сайте платёжные, аналитические и защитные компоненты без согласования. Для проверки гипотез используйте тестовую среду или локальное исключение ресурса в браузере, понимая границы такого опыта. Изменение в одном браузере не равно готовому исправлению для всех посетителей.
Проверьте сервер по наблюдаемым данным
В Битрикс есть панель производительности, которая помогает оценивать конфигурацию и находить направления проверки. Её показатель не заменяет время конкретного пользовательского сценария. Хорошее значение общего теста не доказывает, что ваш фильтр или доработка корзины выполняются быстро.
Сопоставьте время медленного запроса с нагрузкой на процессор, память, диск и базу. Проверьте параллельные импорты, резервное копирование и плановые задания. Если торможение возникает только во время обмена, расширение сервера может быть лишь одним из вариантов; сначала оцените расписание и характер конкурирующих операций.
Для базы используйте отчёт SQL-запросов, когда журналирование доступно и включено по согласованному плану. Сбор диагностики сам создаёт нагрузку и данные: ограничьте длительность, круг доступа и дальнейшее хранение. Не публикуйте полные запросы с персональными данными в открытой задаче.
Каталог и фильтр: найдите повторяющуюся работу
Проверьте, сколько данных действительно нужно для списка. Загрузка всех свойств, изображений и дополнительных расчётов каждой карточки может быть избыточной для категории. Сравните требуемый интерфейс и выполняемую работу. Удаление нужной покупателю функции ради показателя скорости не является полноценным исправлением.
Посмотрите, не повторяются ли одинаковые запросы для каждого товара. Проверьте обработчики, сторонние модули и вычисления, добавленные в шаблон. Уточните, как построены свойства и индекс фильтра в вашей конфигурации. Любые перестроения и изменения структуры сначала выполняйте на копии с проверенным восстановлением.
Сравните первый запрос и повторный с прогретым кешем. Затем проверьте другую группу покупателя и регион, если они влияют на результат. Нельзя ускорять персональные цены общим кешем, который покажет условия одного клиента другому. Корректность разделения данных — обязательный критерий приёмки.
Корзина: проверьте расчёт и внешние зависимости
Изменение количества может запускать скидки, проверку наличия, доставку и обращения к внешним сервисам. Уточните, что действительно нужно пересчитать в этот момент. Запрос к службе доставки при каждом нажатии без изменения адреса — отдельная гипотеза, которую нужно подтвердить трассировкой, а не объявлять причиной заранее.
Проверьте быстрое повторное нажатие и задержку сети. Старый ответ не должен перезаписывать новый итог. Интерфейс должен показывать актуальное состояние и не позволять незаметно отправить противоречивый заказ. После ускорения обязательно повторите проверку сумм, скидок, доступности и обмена.
Если карточка и корзина расходятся по цене, сначала установите правило расчёта. Ошибка данных не исправляется уменьшением времени ответа. Связанный маршрут начинается с диагностики цен и остатков и заканчивается проверкой одного заказа.
Примите ускорение на тех же условиях
Повторите исходные сценарии на той же выборке данных, устройстве и роли. Сравните несколько измерений, а не лучший результат после доработки с худшим до неё. Отдельно проверьте первый запрос, повторный, мобильную версию и соседние функции. Сохраните изменение, дату и способ отката.
Условный пример протокола: фильтр до изменения ждал ответ сервера, после изменения серверная часть сократилась, но список стал обновляться с ошибкой. Такой выпуск не принят, даже если измерение быстрее. Условия должны включать и время, и правильный результат, и отсутствие утечки персональных данных.
Частые вопросы об ускорении
Достаточно купить более мощный сервер?
Если ограничение подтверждено ресурсами, это может помочь. Но повторяющиеся запросы, блокировки и ошибки браузера требуют другой работы. Покупка без измерений оставляет неизвестными причину и запас производительности.
Нужно добиться максимального балла проверки?
Баллы полезны как ориентир конкретного инструмента. Приоритет — покупательский сценарий и корректный результат. Не удаляйте важные функции только ради оценки и не переносите результат лабораторного теста на всех пользователей без оговорок.
Что передать исполнителю?
Три сценария, исходные измерения, контекст и время проблем. Для устранения подтверждённых причин обсудите ускорение сайта, а порядок дальнейших проверок закрепите в условиях поддержки Битрикс.


