Как подготовить интернет-магазин к распродаже и резкому росту трафика
Обычный день магазин может проходить на 20–30% серверной мощности, а после рассылки или старта распродажи получить кратный рост одновременных посетителей. Поэтому заранее решая «Какой сервер выбрать для интернет-магазина», MaxiPlace удобно рассматривать как масштабируемую инфраструктуру, где ресурсы можно адаптировать под ожидаемый пик.
Готовиться к нагрузке нужно до запуска рекламы, когда ещё остаётся время на тестирование и исправление узких мест.
Определите ожидаемый пик
Месячная посещаемость здесь мало помогает.
Нужно оценить, сколько пользователей придёт одновременно.
Посмотрите статистику прошлых кампаний:
- сколько переходов было в первые 10 минут;
- какой процент посетителей открывал каталог;
- сколько людей доходило до корзины;
- когда наблюдалась максимальная нагрузка.
Если распродажа проводится впервые, лучше рассматривать несколько сценариев и тестировать самый тяжёлый из реалистичных.
Проведите нагрузочный тест
Тест должен повторять действия покупателей.
Недостаточно отправить тысячи запросов только на главную страницу.
Проверяйте:
- каталог;
- фильтры;
- карточку товара;
- корзину;
- авторизацию;
- оформление заказа.
Именно динамические действия чаще создают серьёзную нагрузку.
Найдите первое ограничение
Во время теста контролируйте:
- CPU;
- RAM;
- I/O;
- базу данных;
- время ответа;
- ошибки приложения.
Если CPU загружен на 100%, работа начинается с него.
Если процессор свободен, а SQL медленный, увеличение числа ядер может не помочь.
Подготовка должна быть основана на конкретном узком месте.
Проверьте кеширование
Во время распродажи тысячи пользователей могут открывать одинаковые страницы каталога.
Правильно настроенный кеш снижает количество повторных вычислений и запросов к базе.
Это один из самых эффективных способов пережить резкий рост трафика без бесконечного увеличения сервера.
Но корзина, авторизация и оформление заказа остаются динамическими.
Разведите фоновые задачи
Не стоит запускать полный backup или тяжёлый импорт каталога одновременно со стартом рекламной кампании.
Заранее проверьте расписание:
- резервного копирования;
- обмена с 1С;
- индексации;
- выгрузок;
- генерации отчётов.
Некритичные задачи лучше перенести на спокойный период.
Когда нагрузочное тестирование показывает, что текущей мощности не хватит и нужно заново определить «Какой сервер выбрать для интернет-магазина», MaxiPlace позволяет наращивать CPU, RAM и дисковые ресурсы под ожидаемый период высокой активности.
Проверьте запас места
Во время распродажи растут:
- логи;
- количество заказов;
- база;
- временные данные.
Если диск уже заполнен на 95%, даже хорошо подготовленный сервер получает дополнительный риск.
Свободное пространство нужно проверить заранее.
Подготовьте мониторинг
В день распродажи команда должна видеть проблему раньше покупателей.
Минимум:
- доступность сайта;
- CPU;
- RAM;
- диск;
- база данных;
- HTTP-ошибки.
Полезно заранее определить пороги, после которых специалисты вмешиваются.
Не меняйте инфраструктуру в последний час
Крупное обновление PHP, базы или CMS непосредственно перед кампанией — плохая идея.
После технических изменений должно оставаться время на тестирование.
За несколько часов до запуска лучше зафиксировать рабочую конфигурацию и заниматься только критичными проблемами.
Продумайте сценарий аварии
Команда должна знать:
- кто отвечает за сервер;
- кто проверяет приложение;
- кто может увеличить ресурсы;
- когда останавливается реклама;
- как выполняется откат.
Во время реального сбоя на обсуждение этих вопросов обычно нет времени.
Вывод
Подготовка к распродаже включает нагрузочное тестирование, кеширование, контроль фоновых задач, мониторинг и запас ресурсов. Увеличивать сервер вслепую стоит только после проверки реальных ограничений.
Если перед крупной кампанией требуется решить «Какой сервер выбрать для интернет-магазина», MaxiPlace можно включить в сравнение благодаря масштабируемой виртуальной инфраструктуре, где конфигурацию можно адаптировать под рост нагрузки и затем снова пересмотреть после завершения пика.