Учебный центр IBS

ARC-015 Микросервисная архитектура

Начало: По факту набора потока
Длительность: 1 неделя
Улучшаемые навыки:
gRPCDevOpsRESTApache KafkaCQRSMQTTKubernetesGraphQLDockerRESTful APISOARabbitMQ
СертификатОнлайн

Описание курса

Данный курс знакомит слушателей с основными концепциями микросервисной архитектуры (МСА). Вводится понятие микросервисной архитектуры, рассматривается её связь с «традиционными» методиками построения системы. Даются шаблоны микросервисной архитектуры, направленные на обеспечение качества разрабатываемой системы. Подробно рассматриваются вопросы развертывания и методы обеспечения значимых качеств МСА.

Модуль 1

  • Понятия монолита, SOA, MSA.
  • Сравнение и обоснование выбора.

Модуль 2

  • Оптимальный размер микросервиса;
  • Разбиение на сервисы по бизнес-возможностям;
  • Разбиение на сервисы по проблемным областям;
  • Практики определения предметных областей;
  • Декомпозиция по техническим и организационным аспектам.

Модуль 3

  • Организация команд под MSA;
  • Организация репозитория кода под MSA.

Модуль 4

  • Паттерны взаимодействия;
  • Синхронные и асинхронные механизмы взаимодействия;
  • Оркестровка и хореография;
  • Основные протоколы и технологии (REST, gRPC, GraphQL, Kafka, RabbitMQ и др.);
  • Взаимодействие с внешними системами (API Gateway, BFF);
  • Реактивные системы;
  • Архитектуры управляемые событиями;
  • Разделение команды и запроса.

Модуль 5

  • Паттерны работы с данными;
  • Порождение событий;
  • Справочные данные в MSA;
  • Единый источник истины (Source of Truth) в MSA.

Модифицируемость.

  • Решение проблемы высокой связанности. Версионирование интерфейсов и событий. Типы контрактов. Изменения событийной модели. Паттерны организации запросов. Микросервисное шасси (Microservice chassis). Сетки сервисов (Service Mesh).

Масштабируемость.

  • Паттерны построения балансировщиков. Сервисы обнаружения и паттерны работы с ними.

Производительность.

  • Паттерны производительности в MSA (переборка, изящная деградация и пр.).

Согласованность.

  • Проблемы обеспечения согласованности в MSA. CAP теорема. Решения проблем согласованности. Двухфазные коммиты. Паттерн SAGA. Понижение уровня согласованности.

Надежность.

Механизмы отказоустойчивости. Паттерны предохранитель (Circuit Breaker), дросселировка, зависимые таймауты и пр.

Безопасность.

Механизмы обеспечения безопасности в MSA. Аутентификация. Авторизация. Защита периметра. Защита каналов связи. Основные протоколы и паттерны (OAUTH2, JWT, привратник, ключ камердинера и пр.).

Тестируемость.

  • Пирамида и квадрат тестирования. Особенность тестирования микросервисов.
  • Модульное тестирование. Интеграционное тестирование. Компонентное тестирование. Тестирование E2E. Паттерны тестирования MSA.</li>

Удобство обслуживания.

Возможность наблюдения (Observability). Паттерны наблюдения (распределенная трассировка, агрегация журналов). Мониторинг и журналирование. Конфигурирование микросервисов. Вынесение конфигурации во вне. Поддержка системы.

Модуль 6

  • Паттерн «Deployment pipeline»;
  • Паттерны развертывания;</li>
  • Использование технологий Docker и Kubernetes;
  • Использование сетки ISTIO;
  • Бессерверное развертывание;
  • Стратегии развертывания (сине-зеленые, канареечные и т.д.).

Модуль 7

  • Стратегии перехода с монолита на микросервисы;
  • Удушение монолита (Strangler monolith);
  • Паттерны удушения;
  • Связь микросервиса с монолитом;
  • Миграция базы данных.

Отзывы о курсе

Отзывов пока нет
Будьте первым, напишите отзыв и поставьте оценку этому курсу.

Еще курсы