Как пережить «Черную пятницу» без потерь?
Чек-лист для подготовки IT-инфраструктуры и специальные предложения от Selectel.
Сезонные распродажи — время пиковых нагрузок не только на отдел продаж, но и на инфраструктуру. В чек-листе рассказываем, как не допустить остановку сайта и ключевых систем, и делимся кейсом нашего клиента.
Шаг 1: Проведите исследование
- Оцените текущую нагрузку: какая ежедневная норма трафика? С какой максимальной нагрузкой уже справлялась инфраструктура?
- Спрогнозируйте нагрузку во время пика: как она должна вырасти? Изучите аналитику прошлых лет или посоветуйтесь с более опытными коллегами.
- Проведите тестовые продажи на сайте/в приложении/в мобильной версии, чтобы понять, вся ли воронка функционирует должным образом.
- Определите, хватит ли мощностей. Проведите нагрузочное тестирование, обратите внимание на скорость работы сайта и загрузки страниц.
- Узнайте, есть ли сотрудники с компетенциями, необходимыми для масштабирования. Если нет, обратитесь за помощью к провайдеру.
Шаг 2: Позаботьтесь о «гигиене»
Выполнение пунктов этого блока должно быть рутинной задачей системного администратора и разработчиков компании. Если это так, смело переходите к следующему шагу. Если нет, подумайте, как внести это в ежеквартальную практику.
- Оптимизируйте приложение или сайт: «почистите» код, фронтенд и бэкенд от лишних сущностей, которые могут привести к торможению загрузки страницы сайта или работы сервиса. Например, от чрезмерных пробелов, встроенных стилей, пустых строк и ненужных комментариев.
- Настройте систему восстановления из бэкапов с минимальным даунтаймом (0-2 секунды).
- Возможно, стоит привести в порядок SEO. «Черная пятница» — хороший способ показать поисковикам, что пользователи находят на вашем сайте необходимые товары и ответы на свои запросы.
Шаг 3: Продумайте планы «А» и «Б»
Следующий шаг — планирование действий во время распродажи. Важно предусмотреть все возможные сценарии:
- Выберите необходимый тип масштабирования: вертикальный или горизонтальный.
При вертикальном растет производительность существующей инфраструктуры — число машин не меняется, мощнее становятся их внутренние характеристики. При горизонтальном нагрузка распределяется между возросшим количеством машин, их характеристики могут оставаться такими же.
- Пропишите требования для одного или для обоих типов масштабирования. Для горизонтального укажите, какая нужна новая инфраструктура. Для вертикального — как изменить комплектацию существующих серверов.
- Подготовьте запасной план на случай проблем во время масштабирования или полного отказа систем. Вы должны понимать, где хранится резервная копия, в каком случае выполнять восстановление из бэкапа, а также кто будет исполнителем recovery-операции. Какое время потребуется на выполнение бэкапа. Процедуру восстановления рекомендуется регулярно отрабатывать.
- Убедитесь, что системы мониторинга работают в штатном режиме и у всех влияющих на ситуацию сотрудников есть доступ к инфраструктуре.
- Подготовьте сценарий вывода из эксплуатации дополнительных мощностей.
Шаг 4: Не теряйте бдительность во время распродажи
Предварительная подготовка завершена, переходим к активным действиям. Для этого:
- Докупите необходимые мощности (согласно плану) или оптимизируйте работу текущей инфраструктуры.
- Не расслабляйтесь во время распродажи — будьте готовы перейти к плану «Б» и оперативно решать внештатные ситуации.
- Мониторьте ситуацию и следите за корректностью работы всех узлов. В такие периоды даже короткий простой может дорого стоить.
Шаг 5: Вернитесь к прежним нагрузкам
После распродажи выведите из эксплуатации избыточные мощности, чтобы не переплачивать за инфраструктуру.
Если не хотите возвращаться к чек-листу перед следующей распродажей, подумайте об автоматизации процессов. Так, выбрав облачные серверы и такие сервисы, как облачные базы данных и Managed Kubernetes, не придется больше думать о масштабировании. Ресурсы этих продуктов увеличиваются автоматически, как только у вас повышается нагрузка — вы платите только за используемые мощности.
Managed Kubernetes также позволяет экономить на собственной команде DevOps-инженеров.
От теории к практике: кейс про работу с нагрузками в 4-5 раз выше нормы в пик продаж
Задача:
У наших клиентов, известной спортивной команды, в дни продажи билетов на крупные матчи нагрузка на сайт росла в 4-5 раз. Они искали решение, которое бы позволило масштабировать производительность в дни массового спроса с минимальными расходами.
Процесс:
Мы подготовили решение на базе облачной платформы Selectel. Использовали сервис Managed Kubernetes и добавили DevOps-процессы от нашей команды:
- провели анализ приложений и рассказали, как адаптировать их к Managed Kubernetes;
- настроили процесс разработки в соответствии с требованиями новой платформы.
Результат:
Даже с учетом расходов на DevOps, затраты заказчика стали на 40 % ниже, чем при постоянном использовании требуемых при расчетной нагрузке мощностей.
Хотите подготовиться к сезону распродаж заранее? Все эксклюзивные предложения, чтобы подготовить ваши проекты к распродажам и «черной пятнице».
Подробнее о том, как подготовить инфраструктуру к распродажам, рассказали на вебинаре.