[microarch.ru] Микросервисная архитектура (Кирилл Ветчинкин)

Курс

[microarch.ru] Микросервисная архитектура (Кирилл Ветчинкин)

1 110 ₽

О курсе

О курсе Курс состоит из 5 вебинаров по 75 минут с глубоким погружением в микросервисную архитектуру. Мы рассмотрим способы декомпозиции, изменения в командах, разбор популярных паттернов и антипаттернов, связь с бизнесом, Agile и DevOps. На курсе вы научитесь проектировать микросервисы начиная с понимания бизнес домена и заканчивая особенностями реализации. Чему вы научитесь Планировать архитектуру ПО Четко понимать область применения микросервисной архитектуры, цели подхода и особенности. Декомпозировать систему Научитесь проводить моделирование микросервисов вокруг бизнес-концепций, применяя практики предметно-ориентированного проектирования. Мигрировать с монолита Строить готовую к применению стратегию перехода от монолита к микросервисной архитектуре. Строить интеграцию между системами Узнаете об основных подходах к интеграции систем, разберётесь с интеграционными шаблонами и научитесь их применять. Совмещать MSA с DevOps, Agile Сможете применять основные практики DevOps для облегчения тестирования и развертывания микросервисов. Формировать команды разработки Узнаете как реорганизовать команды в соотвествии с микросервисной архитектурой, выстроить процесс разработки. Спойлер: Программа курса Курс состоит из 5 вебинаров по 75 минут Базовые понятия Сравнение различных архитектур Отличие SOA от MSA Какого размера должен быть микросервис Плюсы и минусы микросервисной архитектуры Цели успешного внедрения подхода Декомпозиция на микросервисы Понятие Bounded Context Практика EventStorming Тактика декомпозиции системы на микросервисы Сигналы неправильного разбиения Anti-pattern "распределенный монолит" Практика Декомпозиция системы с помощью практики EventStorming Команды и организационная трансформация Организация команд Сколько микросервисов должно быть у команды Структура команды и необходимые навыки Роль архитектора в MSA Роль платформенных команд Организация Community Раскрытие API API Gateway pattern BFF pattern API composition pattern Аутентификация, безопасность Access token pattern Стандарт OAuth2.0 и JWT Единая точка аутентификации(SSO) Популярные сервера аутентификации OAuth 2.0 Аутентификация между микросервисами Практика Формирование команд разработки Связь команд с сервисами Раскрытие API через API Gateway Организация работы с данными Shared database anti-pattern Database per service pattern Структура микросервиса Внутренняя архитектура сервиса Адаптеры обработки публикации событий Повторное использование кода Шаблон сервиса Взаимодействие между сервисами CAP теорема Синхронное/асинхронное взаимодействие Circuit Breaker(Предохранитель) Transactional outbox pattern Polling publisher pattern Transaction log tailing pattern Репликация данных как средство снижения зависимости(CQRS) Отложенная согласованность данных Saga pattern Практика Хранение состояния сервиса Снижение зависимости между сервисами за счет асинхронных коммуникаций Развертывание Понимание DevOps Стратегия автономности поставки Типовой CI/CD конвейер сервиса Способы развертывания Конфигурация и секреты Service discovery Blue-Green Deployment Canary Deployment Тестирование Особенности тестирования микросервисов Пирамида тестирования Тесты контрактов(статья) Компонентные тесты Место тестов в CI/CD конвейере Кто пишет функциональные тесты и стоит ли их писать Практика Построение CI/CD конвейера Обеспечение качества перед выпуском Мониторинг и поддержка Мониторинг работоспособности Мониторинг состояния сервиса Распределенная трассировка Логи и их агрегация Подход "кто разработал тот и поддерживает" Отказоустойчивость Изолированность Горизонтальное масштабирование Стратегии разбиения монолита Strangler application pattern("душитель") Стратегии разбиения Что выносить в первую очередь Выделение Bounded Context Разделение базы данных Выделение сервиса Взаимодействие между сервисом и монолитом Как реализовать отчеты в микросервисной системе Практика Обеспечение мониторинга сервисов Сбор логов