Администрирование [Кирилл Ветчинкин] Микросервисная архитектура (2022)

docndocs

Team member
Joined
Oct 26, 2016
Messages
564
Reaction score
15
Автор: Кирилл Ветчинкин
Название: Микросервисная архитектура (2022)

HIl14Y8.png


О курсе:
Курс состоит из 5 вебинаров по 75 минут с глубоким погружением в микросервисную архитектуру. Мы рассмотрим способы декомпозиции, изменения в командах, разбор популярных паттернов и антипаттернов, связь с бизнесом, Agile и DevOps. На курсе вы научитесь проектировать микросервисы начиная с понимания бизнес домена и заканчивая особенностями реализации.

Кому подойдёт этот курс:
- Разработчик

В вашей компании принято решение использовать микросервисную архитектуру, но вы хотите применять ее правильно, не допуская базовых ошибок при разработке. На курсе уделяется достаточно времени технической реализации подхода. Также ведущий делиться своим опытом из реальных проектов.

- Системный аналитик
Вы определяете вектор развития ИТ систем компании. В случае неправильного применения микросервисной архитектуры, велик шанс привести ИТ ландшафт компании в разрозненное и хрупкое состояние. На курсе вы ознакомитесь с паттернами и антипаттернами подхода, научитесь их комбинировать.

- Teamlead
Без изменений в процессе разработки и структуре команд микросервисы мало эффективны, поэтому мы подробно рассматриваем эти вопросы. По окончании тренинга вы сможете не только выстроить процесс разработки, но и однозначно понять, нужны ли вашей компании микросервисы.

Особенности курса:
Ведущий - практик
Разрабатывал системы на микросервисной архитектуре для Мегафон и Теле2, сейчас развивает направление разработки в компании с 200+ микросервисами, действующий архитектор и TeamLeader команды разработки.

Обучение полностью online
Мы работаем в Zoom и Miro, можно обучаться из дома. Ответы на вопросы в Telegram чате.

Теорию сразу закрепляем на практике
По легенде нам была поставлена цель - спроектировать архитектуру интернет магазина. В течение всего курса мы не только слушаем теорию, а также активно работаем на доске, решая эту задачу.

Говорим не только про технику
Без изменений в процессе разработки и структуре команд микросервисы мало эффективны, поэтому мы подробно рассматриваем эти вопросы.

Чему вы научитесь
- Планировать архитектуру ПО
- Декомпозировать систему
- Мигрировать с монолита
- Строить интеграцию между системами
- Совмещать MSA с DevOps, Agile
- Формировать команды разработки

Программа:
1. Базовые понятия

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

  • Изолированность
  • Горизонтальное масштабирование
Стратегии разбиения монолита
  • Strangler application pattern("душитель")
  • Стратегии разбиения
  • Что выносить в первую очередь
  • Выделение Bounded Context
  • Разделение базы данных
  • Выделение сервиса
  • Взаимодействие между сервисом и монолитом
  • Как реализовать отчеты в микросервисной системе
Практика
  • Обеспечение мониторинга сервисов
  • Сбор логов

Скачать
 
Last edited:
Top