Как пережить «Черную пятницу»‎ без потерь?

Чек-лист для подготовки IT-инфраструктуры.

Сезонные распродажи — время пиковых нагрузок не только на отдел продаж, но и на инфраструктуру. В чек-листе рассказываем, как не допустить остановку сайта и ключевых систем, и делимся кейсом нашего клиента.

Шаг 1: Проведите исследование

  • Оцените текущую нагрузку: какая ежедневная норма трафика? С какой максимальной нагрузкой уже справлялась инфраструктура? 
  • Спрогнозируйте нагрузку во время пика: как она должна вырасти? Изучите аналитику прошлых лет или посоветуйтесь с более опытными коллегами.
  • Определите, хватит ли мощностей. Проведите нагрузочное тестирование, обратите внимание на скорость работы сайта и загрузки страниц.
  • Узнайте, есть ли сотрудники с компетенциями, необходимыми для масштабирования. Если нет, обратитесь за помощью к провайдеру.

Шаг 2: Позаботьтесь о «гигиене»‎  

Выполнение пунктов этого блока должно быть рутинной задачей системного администратора и разработчиков компании. Если это так, смело переходите к следующему шагу. Если нет, подумайте, как внести это в ежеквартальную практику. 

  • Оптимизируйте приложение или сайт: «почистите» код, фронтенд и бэкенд от лишних сущностей, которые могут привести к торможению загрузки страницы сайта или работы сервиса. Например, от чрезмерных пробелов, встроенных стилей, пустых строк и ненужных комментариев.
  • Настройте систему восстановления из бэкапов с минимальным даунтаймом (0-2 секунды).

Шаг 3: Продумайте планы «А»‎ и «Б»‎   

Следующий шаг — планирование действий во время распродажи. Важно предусмотреть все возможные сценарии:

  • Выберите необходимый тип масштабирования: вертикальный или горизонтальный.

При вертикальном растет производительность существующей инфраструктуры — число машин не меняется, мощнее становятся их внутренние характеристики. При горизонтальном нагрузка распределяется между возросшим количеством машин, их характеристики могут оставаться такими же.

  • Пропишите требования для одного или для обоих типов масштабирования. Для горизонтального укажите, какая нужна новая инфраструктура. Для вертикального — как изменить комплектацию существующих серверов.
  • Подготовьте запасной план на случай проблем во время масштабирования или полного отказа систем. Вы должны понимать, где хранится резервная копия, в каком случае выполнять восстановление из бэкапа, а также кто будет исполнителем recovery-операции.
  • Убедитесь, что системы мониторинга работают в штатном режиме и у всех влияющих на ситуацию сотрудников есть доступ к инфраструктуре.
  • Подготовьте сценарий вывода из эксплуатации дополнительных мощностей.

Шаг 4: Не теряйте бдительность во время распродажи

Предварительная подготовка завершена, переходим к активным действиям. Для этого:

  • докупите необходимые мощности (согласно плану) или оптимизируйте работу текущей инфраструктуры.
  • не расслабляйтесь во время распродажи — будьте готовы перейти к плану «Б»‎ и оперативно решать внештатные ситуации.

Шаг 5: Вернитесь к прежним нагрузкам

После распродажи выведите из эксплуатации избыточные мощности, чтобы не переплачивать за инфраструктуру.

Если не хотите возвращаться к чек-листу перед следующей распродажей, подумайте об автоматизации процессов. Так, выбрав облачные серверы и такие сервисы, как облачные базы данных и Managed Kubernetes, не придется больше думать о масштабировании. Ресурсы этих продуктов увеличиваются автоматически, как только у вас повышается нагрузка — вы платите только за используемые мощности.

От теории к практике: кейс про работу с нагрузками в 4-5 раз выше нормы в пик продаж 

Задача:

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

Процесс:

Мы подготовили решение на базе облачной платформы Selectel. Использовали сервис Managed Kubernetes и добавили DevOps-процессы от нашей команды:

  • провели анализ приложений и рассказали, как адаптировать их к Managed Kubernetes;
  • настроили процесс разработки в соответствии с требованиями новой платформы.

Результат:

Даже с учетом расходов на DevOps, затраты заказчика стали на 40 % ниже, чем при постоянном использовании требуемых при расчетной нагрузке мощностей.

Хотите подготовиться к сезону распродаж заранее? Выбирайте услуги или сервисы под ваши задачи и проекты:

Подробнее о том, как подготовить инфраструктуру к распродажам, рассказали на вебинаре.

Что еще почитать по теме

Кирилл Филипенко 14 сентября 2022

Увеличиваем FPS в аниме с помощью нейросети и GPU Tesla T4

Рассказываем про технологию интерполяции и ее практическое применение с помощью облачных серверов с GPU.
Кирилл Филипенко 14 сентября 2022
Ульяна Малышева 25 августа 2022

CDN против DDoS-атак: в каких случаях это действительно работает

Рассказываем про неочевидное преимущество CDN — услуга повышает безопасность инфраструктуры за счет защиты от DDoS-атак.
Ульяна Малышева 25 августа 2022
T-Rex 24 августа 2022

IT-инфраструктура организации: понятие, типы и функции

Рассказываем об IT-инфраструктуре предприятия и ее компонентах для малого, среднего и крупного бизнеса.
T-Rex 24 августа 2022

Новое в блоге

Михаил Фомин 24 июня 2022

Docker Swarm VS Kubernetes — как бизнес выбирает оркестраторы

Рассказываем, для каких задач бизнесу больше подойдет Docker Swarm, а когда следует выбрать Kubernetes.
Михаил Фомин 24 июня 2022
T-Rex 21 сентября 2022

Гипервизор VMware ESXi: функции и отличия от ESX

В статье рассказываем о работе с гипервизором ESXi, его отличиях от ESX и vSphere.
T-Rex 21 сентября 2022

Делегирование от «А» до «Я»: инструкция для начинающих руководителей

Рассказываем про барьеры в делегировании, помогаем избежать «эффекта надзора» и делимся опытом тимлидов Selectel.