Профессиональная конференция для Go-разработчиков

Magnit Tech: сервисы остатков и цен на Go. Как справиться с большими потоками данных, быть гибким и консистентным

Golang Conf: Architecture

Go: Architecture

PostgreSQL
Архитектурные паттерны
ClickHouse
GO

Доклад принят в программу конференции

Мнение Программного комитета о докладе

Обычная бизнес-задача синхронизации данных на масштабе 500М строк превращается в монстра, где надо оптимизировать каждый этап, выбирать модульную и защищённую от падений архитектуру, адаптировать процессы и инфраструктуру под SLA. А если первую версию написала всего пара разработчиков...

Целевая аудитория

Разработчики, архитекторы, системные аналитики.

Тезисы

В докладе расскажем, как мы делали систему управления остатками и ценами:
* какие технические сложности возникают при больших объемах данных (~30к магазинов, ~10-20к SKU, ~ 500 млн строк, 150к/рпс на запись);
* монолит vs микросервисы. Что выбрали и с каким сложностями столкнулись;
* Postgres vs Tarantool. Не самый очевидный выбор;
* работа с Kafka: конфигурация, графики, семантика «exactly-once», драйвер kafka-go от segmentio;
* согласованность в конечном счете — когда и зачем ее можно применять, как достичь;
* извечный вопрос: предподготовить данные или рассчитать на лету? Мы выбрали гибридный подход;
* на какие метрики ориентировались: технические и бизнесовые;
* покажем наши дашборды, расскажем, как мы мониторим асинхронную систему и проводим нагрузочное тестирование, графики ТТХ, нагрузки, таймингов.

Работал разработчиком в компании Delivery Club в команде автоназначений курьеров на заказ (SDB). После того как Yandex поглотил DC, Дмитрия позвали делать систему управления остатками и ценами с нуля в компанию Магнит. В данный момент является руководителем отдела stocks&prices.

Увлечения: всю жизнь занимался хоккеем, в данный момент бегает марафоны для себя, любит художественную литературу.

Magnit Tech

Магнит — это сеть из почти 29 тысяч розничных магазинов по всей России и за рубежом. Чтобы товары вовремя попадали на полки, а магазины без сбоев обслуживали миллионы покупателей, нужна сложная айти-система. Ее развивает Magnit Tech — айти-компания внутри Магнита, в которой работает 4,5 тысячи человек.

Видео