2023 год
Четырёхнедельный онлайн-курс о том, как строить распределённые сервисы. Мы простым языком расскажем о DDD и об архитектуре больших систем. По итогам курса вы спроектируете распределённую систему, которую добавите в портфолио.
В новом потоке все ролики будут новыми. Заодно мы пересмотрели контент — переделали содержимое уроков, один убрали, два добавили.
О чем курс
Компании, которые уходят от монолитной архитектуры к сервисной и микросервисной, часто терпят поражение — получают такой же монолит, только разбитый по нескольким репозиториям.
Мы расскажем, как избежать этих проблем — правильно разнести функциональность по сервисам и выбрать подходящий формат асинхронной коммуникации. Вы познакомитесь с Kafka, Event Streaming и понятием Schema Registry. Кроме того, мы упомянем о CQRS и SAGA.
Сделаем полноценный проект — систему для крупной компании на event-driven-архитектуре по принципам DDD. Мы не только нарисуем кучу квадратиков в LucidChart, но ещё и напишем код — спроектируем и запилим систему инвентаризации оборудования для крупной компании.
Подойдёт всем, кто интересуется архитектурой ПО
Достаточно читать на любом языке программирования, знать хотя бы один популярный MVC-фреймворк и понимать, для чего нужны RabbitMQ/Kafka.
Программа
Вводная
Урок 1
Разбираем, в чём разница между распределённым монолитом и асинхронной системой.
Проектирование
Урок 2
Переводим язык бизнеса в процессы и модель данных
Урок 3
Переводим процессы и модель данных в сервисы и коммуникации
Имплементация
Урок 4
Первый сервис — authn в распределённых системах, CUD и Business events на практике
Урок 5
Основной сервис инвентаризации, выбор message broker
Дорабатываем систему
Урок 6
Добавляем незапланированный сервис: эволюция событий в системе
Урок 7
После запуска: тестирование, ретраи и обработка ошибочных событий
Личный опыт и выводы
Урок 8
Опыт Антона: 4 асинхронные системы из реальной жизни
Урок 9
Итоги и что делать дальше
Авторы
Фёдор Борщёв и Антон Давыдов.
Больше 20 лет опыта на двоих