Как обработать миллион заказов в день

Рассказывает технический директор «Детского мира» 
3 минуты28715

Эта статья ― лишь небольшая часть того, что Николай Ермаков рассказал в интервью для нашего проекта GeekSpeak, доступного только студентам платных программ GeekBrains.


Николай Ермаков ― технический директор компании «Детский мир», член правления компании. По образованию ― инженер-программист.

«Детский мир» сейчас 

Это более 1000 магазинов в России, Казахстане и Беларуси. Группа объединяет розничные сети магазинов «Детский мир» и «Детмир мини», интернет-магазин и маркетплейс detmir.ru, а также сеть товаров для животных «Зоозавр». Сеть развивается, достаточно активно растет. Есть несколько распределительных центров в России. И надо обеспечить, чтобы все это работало, развивалось. 
В интернет-магазине detmir.ru каждый день создается и обрабатывается несколько сотен тысяч заказов в день.
Сейчас это уже существеная доля продаж, которая продолжает расти. Начинали с коробочных решений, а сейчас уже практически полностью перешли на свою E-Com платформу, которую разработали внутренней командой на микросервисной архитектуре.

В ИТ-подразделении сейчас более 450 человек – это разработка, инфраструктура, поддержка и проектный офис. Активно растем и развиваемся для того, чтобы реализовывать новые продукты и проекты, а также обеспечивать надежную работу всех систем и сервисов.
 
Первое ― это инфраструктура, эксплуатация. Все, что нужно для того, чтобы магазины работали. Плюс закупки и лицензии. То есть то, что обслуживает фактически текущий бизнес. Это оборудование, сервера, персональные компьютеры, которыми пользуются сотрудники как в магазинах, так в центральном офисе.
 
Есть еще департамент по разработке бизнес-приложений. Сюда входит разработка SAP, аналитика, финансовая отчетность, кассовое ПО. 

1 млн заказов в день

Третий департамент ― это наш интернет-магазин и маркетплейс. Аудитория ― десятки миллионов пользователей в день, в моменте это может быть 50 000 одновременных сессий. Несколько сотен тысяч заказов в день. А в особо активные периоды это число может доходить и до 1 млн заказов. По отдельным внутренним сервисам это 1000 запросов в секунду, по некоторым даже десятки тысяч.
 
Недавно мы запустили PIM (Product Information Management) – систему по управлению контентом товаров интернет-магазина и маркетплейса. Это наше собственное решение, которое мы хотим развивать.
 
Есть партнеры, которые обеспечивают процессинг. Мы с ними интегрированы и получаем все эти транзакции в реальном времени. Часть данных по ночам забирается, погружается в систему и собирается в наше хранилище данных, из которого дальше уже они раскладываются по всем отчетам. 
 
Есть еще автозаказ, когда надо посчитать, что надо привезти магазины и в каком количестве. Ценообразование. Точно так же это все происходит ночью. Процесс, который дальше уже утром в магазине должен запуститься. Во время открытия должны быть актуальные цены, ассортимент, поставки запланированы.

Цена ошибки 

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

Чтобы этого не случалось у нас выстроены процессы разработки, которые позволяют минимизировать риски. И есть стратегия по тестированию и по раскатке. Мы стараемся не запускать новые разработки сразу на всю сеть. Релизы раскатываются постепенно. Сначала на один магазин или сегмент пользователей, потом группу, кластер и далее на всю сеть. 

Полная версия интервью доступна только студентам GeekBrains

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

К каждому интервью прилагаются полезные материалы, которые спикеры советуют для саморазвития: книги, фильмы, лекции, презентации, подкасты и многое другое.

Посмотреть расширенное интервью и получить подборку материалов могут только студенты платных программ GeekBrains. Хотите стать одним из них? Выберите свою программу обучения здесь.


 

программированиеархитектура
Нашли ошибку в тексте? Напишите нам.
Спасибо,
что читаете наш блог!