Найти в Дзене

Как подготовить сайт к Черной Пятнице и выдержать шквал трафика

Вы смотрите на календарь. До главной распродажи года — две недели. Внезапно приходит отчет: при нагрузке в 2000 человек сайт ляжет. Как труп. Молча, без предупреждений. А вы ждете минимум 5000. Типичная реакция — паника. Наша — холодный расчет. Мы собрали экстренное совещание и устроили мозговой штурм. Директор развел руками: «Чуда не будет. Нужен план». Вот сухая правда: большинство сайтов горят не из-за плохого хостинга. Они горят из-за одной медленной строчки кода, которая встает колом при тысяче запросов. Из-за картинки, которую грузят с сервера в Москве для клиента из Владивостока. Из-за базы данных, которую никто не почистил. Мы знали, что искать. Мы действовали по плану. Шаг 1: Устроить сайту ад
Запустили нагрузочное тестирование — специальная программа имитировала тысячи живых пользователей. Они листали каталоги, бросали товары в корзины, шли на оплату. И он нашелся. Тот самый «слабачок». Один-единственный запрос к базе данных, который выполнялся не 50 мс, а целых 2 секунды. О

Вы смотрите на календарь. До главной распродажи года — две недели. Внезапно приходит отчет: при нагрузке в 2000 человек сайт ляжет. Как труп. Молча, без предупреждений. А вы ждете минимум 5000.

Типичная реакция — паника. Наша — холодный расчет. Мы собрали экстренное совещание и устроили мозговой штурм. Директор развел руками: «Чуда не будет. Нужен план».

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

Мы знали, что искать. Мы действовали по плану.

Шаг 1: Устроить сайту ад
Запустили нагрузочное тестирование — специальная программа имитировала тысячи живых пользователей. Они листали каталоги, бросали товары в корзины, шли на оплату.

И он нашелся. Тот самый «слабачок». Один-единственный запрос к базе данных, который выполнялся не 50 мс, а целых 2 секунды. Один такой — ничего. Тысяча одновременно — катастрофа. Мы его нашли и обезвредили.

Шаг 2: Создать цифрового двойника
Мы скопировали весь сайт — каждую страницу, каждую картинку, каждое описание товара — и разбросали его копии по серверам по всему миру (это называется CDN). Когда пользователь заходил на сайт, он получал его готовую, идеальную версию с ближайшего к нему сервера. А наш главный сервер в этот момент отдыхал и лишь изредка обновлял данные.

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

День Икс. Нагрузка выросла в 20 раз. Команда сидела на созвонах, готовая ко всему. Но сайт работал так, будто это был обычный вторник. Ни падений, ни тормозов. Только стабильный рост продаж.

Это был не magic. Это была работа по чек-листу.

Мы подробно разобрали каждый из 5 ключевых шагов, которые нельзя игнорировать, в большой статье на нашем сайте. Там есть конкретные инструменты, схемы и тот самый чек-лист для самопроверки.

Хотите проверить, готов ли ваш сайт к атаке клиентов?

Прочитать полное руководство по спасению сайта на Технодзен

P.S. В статье есть раздел, который многие упускают: проверка не только техники, но и людей. Готова ли ваша поддержка к шквалу звонков?