Открыто

Микросервисная архитектура [IBS] [Дмитрий Овчаренко]

Тема в разделе "Курсы по программированию", создана пользователем Топикстартер, 16 ноя 2024.

Цена: 48900р.-95%
Взнос: 2331р.

Основной список: 23 участников

  1. 16 ноя 2024
    #1
    Топикстартер
    Топикстартер ЧКЧлен клуба
    1.jpg

    Микросервисная архитектура (МСА) сравнительно недавно завоевала славу самого популярного архитектурного подхода. Ее использование обеспечивает множество преимуществ на различных этапах жизненного цикла продукта. В частности, МСА позволяет получить меньшее время реакции на требования бизнеса, что зачастую обеспечивает ее превосходство над прочими архитектурными стилями.
    Однако, в процессе разработки МСА систем архитектор сталкивается со множеством вызовов, многие из которых заставляют новичков откатываться назад.
    Ошибки декомпозиции могу привести к серьёзному увеличению сложности разработки. Производительность страдает из-за непреодолимых сетевых задержек. Распределенное хранение данных не позволяет использовать транзакционную согласованность. Большое количество взаимодействующих по сети компонент снижает надежность. Сложно обеспечивать безопасность. Кроме того, отдельного разговора требует тестирование и обслуживание распределенной системы.

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

    Цели:
    • Дать представление о МСА и о её связи с остальными архитектурами системы;
    • Дать представление о проектировании МСА систем;
    • Выработать практический навык проектирования МСА систем;
    • Познакомить слушателей с наиболее распространёнными шаблонами МСА;
    Целевая аудитория:
    • Архитекторы;
    • DevOps специалисты;
    • Ведущие разработчики;
    • Руководители разработки.
    Предварительная подготовка:
    • Опыт разработки программных систем.
    • Желательно опыт разработки архитектуры или прохождение курса ARC-001 «Основные практики архитектора ПО», знание подхода DDD или прохождение курса ARC-003 «Domain Driven Design».
    Программа

    1. Архитектурные стили (2 ч.)
    • Понятия монолита, SOA, MSA.
    • Сравнение и обоснование выбора.
    2. Паттерны декомпозиции MSA (2 ч.)
    • Оптимальный размер микросервиса;
    • Разбиение на сервисы по бизнес-возможностям;
    • Разбиение на сервисы по проблемным областям;
    • Практики определения предметных областей;
    • Декомпозиция по техническим и организационным аспектам.
    3. Организация разработки под MSA (1 ч.)
    • Организация команд под MSA;
    • Организация репозитория кода под MSA.
    4. Интеграция микросервисов (3 ч.)
    • Паттерны взаимодействия;
    • Синхронные и асинхронные механизмы взаимодействия;
    • Оркестровка и хореография;
    • Основные протоколы и технологии (REST, gRPC, GraphQL, Kafka, RabbitMQ и др.);
    • Взаимодействие с внешними системами (API Gateway, BFF);
    • Реактивные системы;
    • Архитектуры управляемые событиями;
    • Разделение команды и запроса.
    5. Организация работы с данными в MSA (3 ч.)
    • Паттерны работы с данными;
    • Порождение событий;
    • Справочные данные в MSA;
    • Единый источник истины (Source of Truth) в MSA.
    6. Основные шаблоны МСА (9 ч.)
    1. Модифицируемость.
      • Решение проблемы высокой связанности. Версионирование интерфейсов и событий. Типы контрактов. Изменения событийной модели. Паттерны организации запросов. Микросервисное шасси (Microservice chassis). Сетки сервисов (Service Mesh).
    2. Масштабируемость.
      • Паттерны построения балансировщиков. Сервисы обнаружения и паттерны работы с ними.
    3. Производительность.
      • Паттерны производительности в MSA (переборка, изящная деградация и пр.).
    4. Согласованность.
      • Проблемы обеспечения согласованности в MSA. CAP теорема. Решения проблем согласованности. Двухфазные коммиты. Паттерн SAGA. Понижение уровня согласованности.
    5. Надежность.
      • Механизмы отказоустойчивости. Паттерны предохранитель (Circuit Breaker), дросселировка, зависимые таймауты и пр.
    6. Безопасность.
      • Механизмы обеспечения безопасности в MSA. Аутентификация. Авторизация. Защита периметра. Защита каналов связи. Основные протоколы и паттерны (OAUTH2, JWT, привратник, ключ камердинера и пр.).
    7. Тестируемость.
      • Пирамида и квадрат тестирования. Особенность тестирования микросервисов.
      • Модульное тестирование. Интеграционное тестирование. Компонентное тестирование. Тестирование E2E. Паттерны тестирования MSA.
    8. Удобство обслуживания.
      • Возможность наблюдения (Observability). Паттерны наблюдения (распределенная трассировка, агрегация журналов). Мониторинг и журналирование. Конфигурирование микросервисов. Вынесение конфигурации во вне. Поддержка системы.
    7. Развертывание микросервисов (2 ч.)
    • Паттерн «Deployment pipeline»;
    • Паттерны развертывания;
    • Использование технологий Docker и Kubernetes;
    • Использование сетки ISTIO;
    • Бессерверное развертывание;
    • Стратегии развертывания (сине-зеленые, канареечные и т.д.).
    8. Стратегии миграции от монолита к MSA (2 ч.)
    • Стратегии перехода с монолита на микросервисы;
    • Удушение монолита (Strangler monolith);
    • Паттерны удушения;
    • Связь микросервиса с монолитом;
    • Миграция базы данных.
    Цена 48900 руб
    Скрытая ссылка
     
    Последнее редактирование модератором: 19 ноя 2024
    1 человеку нравится это.
  2. Последние события

    1. Alex_Meh
      Alex_Meh участвует.
      21 дек 2024 в 23:15
    2. MahanM
      MahanM участвует.
      13 дек 2024
    3. MrDima
      MrDima участвует.
      7 дек 2024
    4. Magenta001
      Magenta001 участвует.
      2 дек 2024