Онлайн-курс «Микросервисная архитектура» | robot_dreams
  • онлайн-курс
  • 14 занятий
  • примеры миграции
  • практические занятия

МИКРОСЕРВИСНАЯ АРХИТЕКТУРА

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

Михаил Едемский

16+ лет опыта в разработке

Senior Software Engineer в Microsoft

для кого

Software Engineers

чтобы эффективно использовать микросервисы и строить архитектуру масштабных проектов

DevOps Engineers

чтобы мониторить большое количество микросервисов и обеспечивать надежность работы системы

Engineering Managers

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

 

лектор

Михаил Едемский

Senior Software Engineer в Microsoft
более 16 лет опыта в разработке и поддержке программного обеспечения

  • работал в компаниях Luxoft и Skype

  • имеет практический опыт в разработке микросервисов, использующих Azure и .NET

  • разрабатывает инфраструктуру дистрибуции AI-моделей для применения в видео- и аудиозвонках

  • поддерживает бэкенд-системы распределенного запуска автоматизированных тестов и сбора результатов тестирования в Skype

ПОСЛЕ КУРСА ВЫ

  • реализуете запрос на изменение архитектуры проекта

  • представляете выбор микросервисной архитектуры для руководства и команды

  • совершаете миграцию от монолита к микросервисам для повышения производительности

  • строите среду и процессы эксплуатации микросервисной архитектуры

  • поддерживаете и мониторите бесперебойную работу распределенной системы

Программа

  • 01 занятие
    22.08 19:00

    Монолит vs. Микросервисы

    • Узнаете преимущества и недостатки основных популярных видов архитектуры
    • Поймете типичные нефункциональные требования
    • Рассмотрите основные концепции микросервисной архитектуры
  • 02 занятие
    27.08 19:00

    Моделирование микросервисов

    • Научитесь отделять компоненты для микросервисов
    • Поймете принципы доменно-ориентированного дизайна (DDD)
    • Будете проектировать доменную модель с применением DDD
    • Рассмотрите особенности использования внутренних библиотек
    • Сможете строить C4-диаграммы
  • 03 занятие
    29.08 19:00

    Стратегии декомпозиции

    • Узнаете общие принципы декомпозиции компонентов
    • Научитесь использовать паттерны декомпозиции
    • Будете понимать основные риски, которые могут возникнуть во время декомпозиции монолита
    • Построите алгоритм миграции монолита в микросервисы
  • 04 занятие
    03.09 19:00

    Взаимодействие микросервисов: Request/Response

    • Рассмотрите проблемы, которые могут возникать в результате совместного использования данных
    • Узнаете, чем отличаются синхронная и асинхронная модели коммуникации
    • Сможете проектировать и выбирать технологии синхронных коммуникаций
    • Научитесь строить диаграмму последовательностей
  • 05 занятие
    05.09 19:00

    Взаимодействие микросервисов: Event Driven

    • Будете проектировать эффективную событийно-ориентированную коммуникацию
    • Узнаете основные характеристики брокеров сообщений, сможете выбрать брокер под конкретную задачу
    • Будете проектировать реестры сервисов
    • Научитесь работать с обратно несовместимыми изменениями
  • 06 занятие
    10.09 19:00

    Управление транзакциями

    • Разберете базовые характеристики транзакций
    • Узнаете нюансы хода транзакций в распределенной системе
    • Сможете использовать механизмы локов (locks) для синхронизации транзакций
    • Научитесь строить механизмы отмены транзакции с применением паттерна Sagas
    • Освоите базовые принципы интеграции данных в системы мониторинга и аналитики с использованием CDC
  • 07 занятие
    12.09 19:00

    Паттерны микросервисов

    • Разберете основные паттерны проектирования распределенного фронтенда
    • Сможете использовать самые популярные паттерны микросервисов
  • 08 занятие
    17.09 19:00

    API Gateway и тестирование

    • Научитесь проектировать service meshes
    • Узнаете, когда и как использовать API Gateway
    • Сможете проектировать тесты для микросервиса
    • Научитесь проектировать тесты для проверки интеграции микросервисов
    • Разберете, что такое test flakiness и как с этим бороться
  • 09 занятие
    19.09 19:00

    Устойчивость

    • Разберете основные типы ошибок, которые могут возникать при сетевой коммуникации
    • Освоите BASE-модель и CAP-теорему
    • Узнаете, когда и как использовать паттерны Circuit Breaker и Bulkhead
    • Сможете повысить устойчивость и доступность системы благодаря избыточности
  • 10 занятие
    24.09 19:00

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

    • Поймете специфику DevOps-методологии в случае микросервисной архитектуры
    • Будете проектировать CI/CD-пайплайны, удовлетворяющие требования микросервисной архитектуры
    • Разберете современные инструменты развертывания и оркестрации сервисов
    • Узнаете, как реализовать Zero-downtime подход
  • 11 занятие
    26.09 19:00

    Масштабирование

    • Разберете основные подходы к масштабированию сервисов
    • Проанализируете узкие места (bottlenecks) системы и выберете подход к масштабированию для их устранения
    • Узнаете типичные стратегии кэширования системы и сможете использовать их для повышения производительности сервиса
  • 12 занятие
    01.10 19:00

    Мониторинг и яркость

    • Научитесь проектировать систему мониторинга и логирования для распределенной системы
    • Узнаете, как осуществляется распределенная трассировка
    • Сможете рассчитать основные значения для SLA и SLO систем
    • Поймете типичные метрики инцидентов
  • 13 занятие
    03.10 19:00

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

    • Узнаете, что влияет на безопасность распределенной системы
    • Разберете специфику шифрования данных в случае микросервисной архитектуры
    • Освоите основные механизмы межсервисной аутентификации
    • Сможете выбрать и реализовать механизм аутентификации для конкретного случая
  • 14 занятие
    08.10 19:00

    Организационная структура

    • Поймете основные критерии выбора организационной структуры для работы с распределенными системами
    • Узнаете типовые модели ответственности
    • Научитесь организовывать команды для разработки микросервисной архитектуры

РЕГИСТРАЦИЯ

Регистрируйтесь на курс, чтобы на практике разобраться в принципах микросервисной архитектуры и проектировать эффективные решения.

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

 
 
 
Регистрируясь, вы соглашаетесь с условиями договора-оферты и политикой конфиденциальности.