Как проверить, выдержит ли интернет-магазин распродажу

Обновлено

Распродажа — момент, когда интернет-магазин зарабатывает больше всего, и именно тогда он чаще всего падает. Реклама приводит в 5–10 раз больше посетителей, чем обычно, и все они приходят почти одновременно. Если сайт не выдержит, деньги на рекламу уйдут на страницу с ошибкой 502. Проверить это заранее можно за 10 минут.

Почему магазины падают на акциях

Обычная посещаемость магазина и пик во время акции отличаются не в разы, а на порядок. Типичная картина:

  • в обычный день на сайте одновременно 20–50 человек, и он открывается за секунду;
  • в первый час «Чёрной пятницы» приходит 500 человек, и все идут в каталог, фильтры и поиск;
  • сервер обрабатывает запросы по очереди, очередь растёт, страницы открываются по 15 секунд, потом появляются ошибки 502/503;
  • посетители уходят к конкурентам, а часть заказов теряется на этапе корзины.

Хуже всего то, что в обычные дни этого никто не замечает: сайт работает быстро, пока посетителей мало.

Какие страницы сдаются первыми

  • Поиск по сайту. Каждый запрос — новый, кэшировать нечего, база данных перебирает весь каталог.
  • Фильтры каталога. Сочетаний цвета, размера и цены тысячи, и каждое собирается заново.
  • Корзина и оформление заказа. Они персональные, поэтому не кэшируются, а ещё пишут в базу.
  • Карточки товаров с остатками в реальном времени, если остатки запрашиваются из 1С или склада при каждом открытии.

Главная страница и статичные разделы обычно держатся дольше всех — поэтому проверять «главную открывается» бесполезно, нужно нагружать именно каталог, карточки и поиск.

Сколько посетителей закладывать

Самый надёжный источник — Яндекс Метрика за прошлую акцию: отчёт «Посещаемость» с детализацией по минутам покажет пиковый час. Дальше:

  1. Возьмите пик прошлой распродажи и умножьте на 2–3: аудитория и бюджет на рекламу обычно растут.
  2. Если прошлой акции не было — возьмите обычный дневной пик и умножьте на 5–10 при активной рекламе и рассылке.
  3. Заложите запас: сайт должен держать ожидаемый пик, оставаясь быстрым, а не на грани ошибок.

В НагрузкаПро для этого есть готовая ситуация «Распродажа / Чёрная пятница»: резкий кратный всплеск за минуту и удержание нагрузки. Если подключить Метрику, сценарий повторит доли страниц вашего сайта — сколько посетителей идёт в каталог, сколько в карточки и поиск.

Как проверить магазин: по шагам

  1. За 2–4 недели до акции запустите тест в часы минимального трафика, например ночью.
  2. Посмотрите, при какой нагрузке время ответа превысило 3–5 секунд и какие страницы сдались первыми.
  3. Исправьте самое узкое место (см. ниже) и повторите тест.
  4. За несколько дней до акции сделайте контрольную проверку: за это время мог обновиться модуль или вырасти каталог.
  5. Сохраните отчёт: после акции его удобно сравнить с реальными цифрами.

Что чаще всего помогает

  • Кэширование каталога и карточек. Повторные открытия одной и той же страницы не должны каждый раз ходить в базу. В Битриксе — композитный сайт и управляемый кэш, в WordPress — плагины кэша страниц.
  • Статика через CDN. Картинки, стили и скрипты — это большая часть трафика. Если их отдаёт тот же сервер, что собирает страницы, он тратит силы впустую.
  • Больше процессов PHP. На дешёвых тарифах их 5–10, и при наплыве посетители стоят в очереди. Иногда достаточно сменить тариф на время акции.
  • Остатки и цены без запроса в 1С на каждое открытие. Синхронизация раз в несколько минут вместо запроса в реальном времени.
  • Отключение тяжёлых виджетов на время акции — «похожие товары», «с этим покупают», онлайн-чаты, которые грузятся с каждой страницей.

Подробнее о причинах тормозов — в статьях о Битриксе, WordPress и WooCommerce и ошибках 502 и 503.

Чек-лист за неделю до распродажи

  • Нагрузочный тест пройден с запасом хотя бы в 1,5 раза к ожидаемому пику.
  • Хостинг знает о дате акции; при необходимости тариф повышен.
  • На время акции не запланированы обновления CMS и выгрузки из 1С в рабочие часы.
  • Есть свежая резервная копия сайта и базы.
  • Кто-то из команды дежурит в день старта и знает, куда смотреть, если сайт начнёт тормозить.

Частые вопросы

За сколько до распродажи проверять магазин?

За 2–4 недели: если тест покажет проблему, останется время сменить тариф хостинга или включить кэширование. Повторите проверку за несколько дней до акции.

Сколько посетителей закладывать на «Чёрную пятницу»?

Возьмите пиковый час прошлой распродажи из Метрики и умножьте на 2–3. Если истории нет — ориентируйтесь на обычный пик, умноженный на 5–10 при сильной рекламе.

Что падает первым в интернет-магазине?

Чаще всего поиск, фильтры каталога и корзина: эти страницы не кэшируются и каждый раз ходят в базу данных.

Ещё по теме