Как не превратить микросервисы в ад
Кейс-стади от экс-техлида «Новой Почты». Почему нарезка бэкенда по таблицам базы данных приводит к краху и как с помощью Bounded Contexts проектировать системы, которые не ломаются.
Среди зарегистрированных участников разыграем 3 места на курсе «Mastering DDD» (пакет Gold)
Типичный сценарий: монолит режут на сервисы по таблицам базы. На схеме всё выглядит аккуратно, а в продакшене появляются распределённые транзакции, блокировки и деплои, которые приходится синхронизировать между командами.
Вместо одного монолита ты получаешь распределённый монолит. Он медленнее и хрупче оригинала.
Без лайвкодинга в IDE – только архитектура, системные ошибки и реальные решения. Сергей Сучок покажет на Enterprise/Highload-кейсе, почему Bounded Context не равен сервису, как строить Context Map и где на самом деле проводить границы сервисов.
которые сейчас разделяют монолит или только планируют и хотят не наступить на грабли, на которые до них наступили сотни команд.
но видят общую базу, синхронные цепочки вызовов и релизы, которые приходится координировать между сервисами.
и хотят уверенно проходить System Design собеседования и аргументированно защищать разделение системы перед командой и бизнесом.
агрегаты, сущности, value objects, но не понимает, как применить DDD на уровне всей системы и нескольких команд.
Как попытка нарезать монолит по табличкам базы создаёт «распределённый ад»: распределённые транзакции, блокировки, зависимые деплои.
Почему Bounded Context – это граница единого языка (Ubiquitous Language), а не схемы БД. От поддоменов (Core / Supporting / Generic) до Context Map: Shared Kernel, Customer–Supplier, Anti-Corruption Layer.
Схема большой системы: как было, почему упёрлось в потолок и как разрезали контексты.
Как определить, проведена ли граница там, где нужно.
Увидишь симптомы в собственной системе ещё до того, как они станут инцидентами.
Поймёшь, почему схема базы – плохая подсказка для разделения на сервисы.
Shared Kernel, Customer–Supplier и ACL на примере большой системы.
Чтобы оценить, проведены ли границы сервисов в твоей системе там, где нужно.
После регистрации ты получишь ссылку на трансляцию в день события.
Сергей Сучок проведёт эфир и разберёт на схемах, как Стратегический DDD спасает микросервисы от распределённого монолита.
Архитектурный разбор без лайвкодинга, ответы на вопросы и розыгрыш 3 мест на курсе «Mastering DDD».
Пакет Gold практического Advanced-курса Сергея Сучка «Mastering Domain-Driven Design: DDD, CQRS и Event Sourcing на практике». Старт курса – 30 ноября. Розыгрыш проведём на вебинаре среди зарегистрированных участников.
Подробнее о курсе →Среди зарегистрированных участников разыграем 3 места на курсе «Mastering DDD» (пакет Gold).
Укажи контактные данные, чтобы получить ссылку на трансляцию вебинара Сергея Сучка о Стратегическом DDD.