Онлайн-курс "Микросервисная архитектура"(Февраль)

Мы объясняем смысл, а не теорию.

ИТ и интернет 18+

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

На курсе вы научитесь проектировать микросервисы начиная с понимания бизнес домена и заканчивая особенностями реализации.

Даты вебинров:

  1. 01.02(вторник)
  2. 03.02(четверг)
  3. 07.02(понедельник)
  4. 09.02(среда)
  5. 11.02(пятница)

Время начала занятий — 19:00 по Москве, продолжительность 75 минут.

 

Особенности курса

  1. Ведущий — практик. Разрабатывал системы на микросервисной архитектуре для Мегафон и Теле2, сейчас развивает направление разработки в компании с 300+ микросервисами, действующий архитектор и TeamLeader команды разработки.
  2. Обучение полностью online(Zoom+Miro)
  3. Говорим не только про технику. В курсе уделяется внимание интеграции подхода в организацию и связь с орг. структурой.

 

Как проходит обучение

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

  1. Легенда. В самом начале участники знакомятся с легендой, которую будут применять в течение всего курса.
  2. Теория. Чтобы сделать все правильно, важна теория и понимание основных принципов микросервисной архитектуры. Ведущий рассказывает блок теории, рассматривает паттерны и антипаттерны, приводит примеры из собственного опыта.
  3. Домашнее задание. По окончании каждого занятия, участники получают домашние задание. Участники самостоятельно прорабатывают задачу и предлагают свой вариант решения.

  4. Разбор ошибок. Преподаватель проверяет задания, дает пояснения по результатам решения, демонстрирует свой вариант. Также слушатели могут задать вопросы в чате.

 

Для кого этот курс

За все время проведения курса основными участниками являлись:

  • Системный аналитик
  • TeamLead/TechLead
  • Разработчик

 

Программа курса

1 вебинар

Базовые понятия

  • Понятия Big ball of mud, монолита
  • Отличие SOA от MSA
  • Что на самом деле значит "микро"
  • Монолит vs микросервисы, сравнение и обоснование выбора
  • Цели успешного внедрения подхода

Декомпозиция на микросервисы

  • Знакомство с DDD, его основные понятия и идеи
  • Разбиение на сервисы по ограниченным контекстам
  • Подход Monolith First
  • Сигналы неправильного разбиения
  • Anti-pattern "распределенный монолит"
  • Оптимальный размер микросервиса

Команды и организационная трансформация

  • Закон Конвея(организация команд по областям)
  • Сколько микросервисов должно быть у команды(service per team pattern)
  • Структура команды и необходимые навыки
  • Сочетание MSA со Scrum
  • Организация Git репозиториев
  • Роль архитектора в MSA
  • Запуск архитектурного Community
  • Межкомандные договоренности

Практика

  • Обнаружение поддоменов
  • Декомпозиция системы на микросервисы

 

2 вебинар

Команды и организационная трансформация

  • Закон Конвея(организация команд по областям)
  • Сколько микросервисов должно быть у команды(service per team pattern)
  • Структура команды и необходимые навыки
  • Организация Git репозиториев
  • Роль архитектора в MSA
  • Роль платформенных команд
  • Организация Community

Раскрытие API

  • API Gateway pattern
  • BFF pattern
  • API composition pattern

Аутентификация, безопасность

  • Access token pattern
  • Стандарт OAuth2.0 и JWT
  • Единая точка аутентификации
  • Сервер аутентификации
  • Популярные сервера аутентификации 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 конвейер сервиса
  • Развертывание на виртуальных машинах
  • Развертывание в контейнерах Docker
  • Конфигурация и секреты
  • Service discovery
  • Blue-Green Deployment
  • Canary Deployment

Тестирование

  • Особенности тестирования микросервисов
  • Пирамида тестирования
  • Тесты контрактов
  • Компонентные тесты
  • Место тестов в CI/CD конвейере
  • Кто пишет функциональные тесты и стоит ли их писать

Практика

  • Построение CI/CD конвейера
  • Обеспечение качества перед выпуском

 

5 вебинар

Мониторинг и поддержка

  • Мониторинг работоспособности
  • Мониторинг состояния сервиса
  • Распределенная трассировка
  • Логи и их агрегация
  • Подход "кто разработал тот и поддерживает"

Отказоустойчивость

  • Изолированность
  • Горизонтальное масштабирование

Стратегии разбиения монолита

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

Практика

  • Обеспечение мониторинга сервисов
  • Сбор логов

 

Более подробная информация на сайте

https://microarch.ru

Поделиться:

1014 дней назад
1 февраля 19:00 — 11 февраля 2022 19:00

Событие пройдет онлайн

Поделиться:

Связь с организатором

Напоминаем, что для того чтобы сделать возврат организатору можно не писать.

На этот адрес придёт ответ от организатора.

Подпишитесь на рассылку организатора

Возврат билета

Если вы хотите вернуть билеты, вы можете сделать это по ссылке из письма с билетами или оформить запрос организатору в вашем  личном кабинете.

Подробнее о возврате билетов