Складчина: Коммуникации систем [Пакет - Аптечка] [Школа сильных программистов] [Фёдор Борщёв, Антон Давыдов]
Программа курса
Неделя 1. База по event-driven
Познакомимся с учебной системой и её проблемами.
Разберём базовые понятия всего курса:
что такое система, чем EDA отличается от микросервисов с асинхронной коммуникацией и с чего начинать, когда в наследство достался распределённый монолит.
На выходе научитесь определять события в системе с помощью EventStorming, поймёте, почему события — хорошо, а команды — плохо, научитесь выбирать брокер и понятно именовать события.
Ключевые концепции и термины:
Event driven architecture
Event driven communications
Coupling и cohesion
Командный и реакционный подход к коммуникациям
EventStorming
Гранулярность событий
Распределённые очереди и распределённые логи
Fine/Coarse события
Kafka
Неделя 2. Углубляемся в коммуникации
В прошлом уроке мы определили связи, основываясь на функции системы. Теперь посмотрим её форму — построим модель данных, необходимых для бизнес-логики.
На основе карты коммуникаций и модели данных определим способы коммуникаций частей системы между собой.
На выходе научитесь строить концептуальную модель данных, определять стили коммуникации, решим, какие данные складывать в одно событие, а какие — в несколько, поймёте, как называть топики в kafka.
Ключевые концепции и термины:
Концептуальная, логическая и техническая модель данных
Консистентность
Delta vs state события
System/replication/public id
Сериализация событий: json, proto, avro
Неделя 3. Эволюция и исправление ошибок
Система растёт и меняется, кажется, что бизнес-требования противоречат сами себе. Учимся не бояться этого, разбираемся с обратной совместимостью.
На выходе поймёте, как эволюционируют большие системы, научитесь переезжать с синхронной на асинхронную связи (и обратно) и строить подробный план для изменения любого вида связи. Узнаете о проблемах совместимости и о том, как они решаются
Ключевые концепции и термины:
Прямая и обратная совместимость
Версионирование коммуникаций
Schema Registry
Потеря данных и идемпотентность
Ретраи
Outbox pattern и dead letter queue
Event ordering.
Неделя 4. Занимаемся поддержкой системы
Учимся жить с большой системой. Разбираемся, как наблюдать за тем, что происходит в коммуникациях, и отлаживать возникающие проблемы.
На выходе научитесь мониторить большие системы. Разберётесь в реакционных паттернах и их применимости для реализации бизнес-логики.
Научитесь доказательно объяснять и продавать бизнесу и коллегам принятые решения, связанные с коммуникациями.
Ключевые концепции и термины:
Observability & monitoring
Доказуемость принятия решений
Security
CQRS, event sourcing
Coordination Models
Socio-technical systems
Неделя 5. Итоги и дальнейшие шаги
Подводим общие итоги и обсуждаем дальнейшие шаги.
Повторяем концепции, пройденные в курсе, и планируем развитие собственных навыков после курса.
На выходе получите чек-лист работы над коммуникациями систем, дальнейшие шаги по самостоятельному изучению. Соберёте все знания системы вместе так, чтобы к ним можно было возвращаться.
Ключевые концепции и термины:
всё, что было в курсе
C4, arc42, iso42010
Team topology
Integration patterns
Неделя 7. Q&A-сессия
Пакет - Аптечка
Теория
— 5 лонгридов
— Список дополнительных материалов
Практика и обратная связь
— Домашка, без обратной связи
Бонусы
— Q&A-сессия в конце обучения. Сможете задать вопросы и пообщаться с авторами курса
СЛИВ СКЛАДЧИН
Программа курса
Неделя 1. База по event-driven
Познакомимся с учебной системой и её проблемами.
Разберём базовые понятия всего курса:
что такое система, чем EDA отличается от микросервисов с асинхронной коммуникацией и с чего начинать, когда в наследство достался распределённый монолит.
На выходе научитесь определять события в системе с помощью EventStorming, поймёте, почему события — хорошо, а команды — плохо, научитесь выбирать брокер и понятно именовать события.
Ключевые концепции и термины:
Event driven architecture
Event driven communications
Coupling и cohesion
Командный и реакционный подход к коммуникациям
EventStorming
Гранулярность событий
Распределённые очереди и распределённые логи
Fine/Coarse события
Kafka
Неделя 2. Углубляемся в коммуникации
В прошлом уроке мы определили связи, основываясь на функции системы. Теперь посмотрим её форму — построим модель данных, необходимых для бизнес-логики.
На основе карты коммуникаций и модели данных определим способы коммуникаций частей системы между собой.
На выходе научитесь строить концептуальную модель данных, определять стили коммуникации, решим, какие данные складывать в одно событие, а какие — в несколько, поймёте, как называть топики в kafka.
Ключевые концепции и термины:
Концептуальная, логическая и техническая модель данных
Консистентность
Delta vs state события
System/replication/public id
Сериализация событий: json, proto, avro
Неделя 3. Эволюция и исправление ошибок
Система растёт и меняется, кажется, что бизнес-требования противоречат сами себе. Учимся не бояться этого, разбираемся с обратной совместимостью.
На выходе поймёте, как эволюционируют большие системы, научитесь переезжать с синхронной на асинхронную связи (и обратно) и строить подробный план для изменения любого вида связи. Узнаете о проблемах совместимости и о том, как они решаются
Ключевые концепции и термины:
Прямая и обратная совместимость
Версионирование коммуникаций
Schema Registry
Потеря данных и идемпотентность
Ретраи
Outbox pattern и dead letter queue
Event ordering.
Неделя 4. Занимаемся поддержкой системы
Учимся жить с большой системой. Разбираемся, как наблюдать за тем, что происходит в коммуникациях, и отлаживать возникающие проблемы.
На выходе научитесь мониторить большие системы. Разберётесь в реакционных паттернах и их применимости для реализации бизнес-логики.
Научитесь доказательно объяснять и продавать бизнесу и коллегам принятые решения, связанные с коммуникациями.
Ключевые концепции и термины:
Observability & monitoring
Доказуемость принятия решений
Security
CQRS, event sourcing
Coordination Models
Socio-technical systems
Неделя 5. Итоги и дальнейшие шаги
Подводим общие итоги и обсуждаем дальнейшие шаги.
Повторяем концепции, пройденные в курсе, и планируем развитие собственных навыков после курса.
На выходе получите чек-лист работы над коммуникациями систем, дальнейшие шаги по самостоятельному изучению. Соберёте все знания системы вместе так, чтобы к ним можно было возвращаться.
Ключевые концепции и термины:
всё, что было в курсе
C4, arc42, iso42010
Team topology
Integration patterns
Неделя 7. Q&A-сессия
Пакет - Аптечка
Теория
— 5 лонгридов
— Список дополнительных материалов
Практика и обратная связь
— Домашка, без обратной связи
Бонусы
— Q&A-сессия в конце обучения. Сможете задать вопросы и пообщаться с авторами курса
СЛИВ СКЛАДЧИН
Для просмотра скрытого содержимого вы должны зарегистрироваться
Возможно, Вас ещё заинтересует:
- Создание голоса на основе искусственного интеллекта для любой отрасли с ElevenLabs [Udemy] [Anton Voroniuk]
- Олимпиадная математика для 5–6 классов. Общие методы решения задач [Systematika] [Дмитрий Иванюк]
- Олимпиадная математика для 5–6 классов. Геометрия [Systematika] [Дмитрий Иванюк, Евгений Тодоров]
- Олимпиадная математика для 5–6 классов. Особые типы задач [Systematika] [Дмитрий Иванюк]
- Новые методы глубинной психологии. 44 метода. Вебинар 13. Драмы и мифы [Станислав Раевский]
- ЕГЭ Английский. Идеи для ответов, разбор ошибок [Алла Крылова]