igooods доставляет продукты и товары из гипермаркетов для жителей из разных уголков России. Пользователь оформляет заказ через сервис и получает товары по магазинным ценам уже через 90 минут — ему не нужно тратить время и силы на походы за покупками.

География

Россия

Бизнес

Доставка товаров

Продукт

Веб-сервис и приложение

Какие задачи нужно было решить

Увеличить инфраструктуру по мере роста бизнеса

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

Соблюсти закон о персональных данных

igooods арендовал «железо» у зарубежного провайдера. Все работало исправно, но 1 июля 2017 года вступили в силу поправки к закону 152-ФЗ «О персональных данных». Теперь закон требовал, чтобы компании, которые работают с клиентами из России, хранили и обрабатывали их личные данные на территории РФ. Чтобы отвечать 152-ФЗ, igoods нужно было переехать — организовать свою IT-инфраструктуру в России.

Быстро адаптироваться к изменениям

igooods искал провайдера, на которого можно положиться даже в непредвиденной ситуации (забегая вперед, надежность стала крайне необходима во время пандемии коронавируса). Разработчик iGooods порекомендовал своим коллегам Selectel — он сказал, что «это нормальные и крупные ребята». Так команда переехала к российскому провайдеру.

«С Selectel довольно простые договоренности обо всем и простой вход в услуги. Понятная цель, понятные ребята. Для нас главное — надежность. Мы остаемся с Selectel, потому что это надежный партнер, и можно не беспокоиться».

Самат Галимов, СТО в igooods

Какие решения Selectel помогли

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

Клиентов у igooods становилось больше в несколько раз год к году, росла и инфраструктура — требовались новые мощности. Для продакшна компания арендовала еще несколько выделенных серверов, а для тестовых сред разработки развернула виртуальные машины в «Облачной платформе».

Бизнес рос, и igooods нужно было развивать отдельные сервисы — для этого компания решила построить микросервисную архитектуру и подключила Managed Kubernetes. В итоге с помощью услуги каждый сервис хранится в своем контейнере — это упрощает разработку и тестирование приложений. Кроме этого, igooods подключил еще несколько сервисов Selectel. Для хранения товарных остатков и других данных, которые регулярно отгружают партнеры из магазинов и гипермаркетов, компания стала использовать «Облачное хранилище». А чтобы изображения товаров прогружались быстро у пользователей из любых городов, команда подключила сеть доставки контента CDN.

Сбой во время пандемии

В марте 2020 года, когда в мире случилась пандемия коронавируса, клиентов у igooods стало больше в 2-3 раза — компания впервые столкнулась с таким высоким спросом. Серверы работали на 40-60% емкости, и нужно было срочно увеличить их мощности.

17 марта для кластера приложений igooods арендовал 2 новых сервера в «Панели управления». Чтобы ускорить получение «железа», команда сразу позвонила своему менеджеру в Selectel — с его помощью оборудование под нужную сборку igooods было готово уже через 4 часа вместо привычных 2 дней. Кроме того, через несколько часов из-за возросшей пользовательской нагрузки команде пришлось переносить базу данных на более мощный сервер.

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

Сбой был серьезным, о нем писали в соцсетях и СМИ. Легли сайт, приложения и внутренние системы igooods — курьеры не могли доставить даже оформленные до сбоя заказы. Сервисы igooods были недоступны, потому что сервер базы данных столкнулся с очень высокой нагрузкой в процессор — запросов к БД было не больше, чем обычно, но по времени они длились дольше. Было не ясно, почему так происходит.

Команда стала искать причину и направила все силы на устранение даунтайма. Спустя несколько часов нашла ошибку на стороне разработки. Все дело было в том, что кэш Redis перестал записывать страницы с приложения на Rails — это заметно увеличило нагрузку на базу данных и вывело сервисы igooods из строя. Когда ошибку устранили, сайт и приложения возобновили работу, а клиенты начали получать заказы.

«Сейчас главная задача — сделать системы независимыми, чтобы при падении публичных систем работали внутренние. Исполнение заказов — наивысший приоритет: нужно закончить старые, даже если нет возможности принять новые».

Андрей Родин, CPO в igooods

Каких результатов добились

на 97 тысяч
выросло число ежемесячных заказов с февраля 2020 года
14 серверов
готовой и произвольной конфигурации арендует igooods
6 ТБ данных
гипермаркетов и магазинов хранится в «Облачном хранилище»

Сейчас у igooods 14 физических выделенных серверов приложений и баз данных. В «Облачной платформе» развернуто 10 виртуальных машин, а в «Облачном хранилище» — 29 контейнеров и 6 ТБ данных гипермаркетов и магазинов.

С начала пандемии у сервиса значительно выросло число заказов: в феврале их было 87 000, а уже в июне — 184 000. После мартовского сбоя все работает стабильно, и связная IT-инфраструктура помогает компании расти.

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

«Хороший хостинг — о котором не вспоминают, потому что он стабильный. Selectel — именно такой. Мое пожелание Selectel: продолжайте в том же духе!».

Самат Галимов, СТО в igooods

Реализуйте похожий проект

Оставьте заявку, и мы свяжемся в течение рабочего дня.

Вы всегда можете получить бесплатную консультацию по телефону 8 800 555 06 75, почте sales@selectel.ru или в  Telegram.