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

Онлайн-курс "Микросервисная архитектура"
16 декабря 2024
ПОНЕДЕЛЬНИК
19:00

О курсе

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

Курс ведёт действующий архитектор

Кирилл Ветчинкин — опыт применения MSA с 2016 года.

  • Отвечает за архитектуру, ревью сервисов и руководит процессами разработки в крупном Маркетплейсе.
  • Успешно реализовал ряд высоконагруженных систем на микросервисной архитектуре для Мегафон, Теле2, ВСS Brокer, СберМаркет
  • Постоянный спикер крупных IT конференций по разработке и Архитектуре ПО: ArchDays, Highload++, Podlodka, РИТ, DevOpsDays, DotNext, DevOps Pro, MskDotNet Meetup и другие
  • Обладает степенью MBA в IT (ВШЭ)

Формат

  • 11 видеоуроков по 40-60 минут
  • 6 практических заданий на проектирование (код писать не надо)
  • Отработка навыков через кейс
  • Поддержка в чате от самого эксперта
  • 3 Q&A сессии в Zoom, для разбора ДЗ и вопросов

Кому подойдет

Аналитикам и разработчикам, которые хотят освоить проектирование систем, основанных на микросервисах.

Кому не подойдет

Если вы хотите разобраться с технологиями (grpc, kafka, docker) и т.п. На курсе мы именно проектируем и изучаем паттерны и антипаттерны микросервисной архитектуры. Код мы не пишем, но строим архитектурную схему.

Программа

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

  • Сравнение архитектур
  • Монолит vs Микросервисы
  • Область применения микросервисов
  • Цели внедрения микросервисов

Основы Domain Driven Design

  • Доменное событие (Domain Event)
  • Правило хорошей декомпозиции
  • Что такое Domain Driven Design (DDD)
  • Стратегические паттерны DDD
  • Тактические паттерны DDD
    (Aggregate, Value Object, Entity, Domain Event)

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

  • Стратегия выделения микросервисов
    (Decompose by subdomain pattern)
  • Допустимый размер микросервиса
  • Размер микросервиса и команда
  • Практика Event Storming

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

  • Организация команд
  • Владение сервисом (Service per team pattern)
  • Управление продуктом в MSA
  • Роль архитектора в MSA
  • Платформенные команды
  • Команды разработки общих сервисов
  • Как распределять разработчиков, на сервисы

Раскрытие API и Аутентификация

  • API Gateway pattern
  • BFF (Backend for front-end) pattern
  • API Composition pattern
  • Access token pattern
  • Популярные сервера аутентификации

Структура микросервиса

  • Организация работы с данными (Database per service pattern)
  • Внутренняя архитектура сервиса
  • Повторное использование кода (Shared library anti-pattern)
  • Шаблон сервиса (Service Template pattern)

Межсервисное взаимодействие

  • Синхронное взаимодействие (Remote Procedure Call (RPC) pattern)
  • Защита от сбоев (Fallback, Retry, Circuit Breaker)
  • Асинхронное взаимодействие (Messaging pattern)
  • Отложенная согласованность (Eventual consistency)
  • Обеспечение отложенной согласованности
    (Outbox pattern, Transaction log tailing pattern)
  • Защита от дубликатов (Idempotent Consumer (inbox)pattern)
  • Command Query Responsibility Segregation (CQRS) pattern
  • Управление сквозными процессами (Saga pattern)

Развертывание

  • Способы развертывания микросервиса
    (Service instance per Container pattern и другие)
  • Стратегия автономности поставки
  • Типовой CI/CD конвейер сервиса
  • Способы получения конфигурации
    (Externalized configuration pattern)

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

  • Основные ошибки при тестировании распределенных систем
  • Пирамида тестирования
  • Unit тесты
  • Integration тесты
  • Contract тесты (Consumer-side contract test pattern)
  • Component тесты (Service Component Test pattern)
  • End-to-end тесты

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

  • Health Check API pattern
  • Мониторинг состояния сервиса (Application metrics pattern)
  • Сбор логов (Log aggregation pattern)
  • Распределенная трассировка (Distributed tracing pattern)
  • Поддержка ("You build it, you run it")
  • Изолированность
  • Масштабирование

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

  • Планирование миграции на микросервисы
  • Основные стратегии декомпозиции
  • Прикладные подходы
    (Strangler application pattern, Branch by abstraction pattern и другие)
  • Отчеты и аналитика

Есть вопрсы, нужна консультация?

Telegram: @kirill_vet


изменить информацию сообщить о проблеме

С этим мероприятием что-то не так?

  • Неправильная дата или время
  • Неправильный адрес
  • Неправильно указан тип мероприятия
  • Плохое описание
  • Мероприятие отменено или отложено
  • Неприемлемый/неприличный контент
  • Нарушение авторских прав
  • Это спам
  • Не получается купить билет

Онлайн

похожие мероприятия

Все мероприятия в онлайне