О чём курс
Современный курс для архитекторов и ИТ-специалистов. Освойте проектирование и интеграцию ИТ-систем, используя передовые архитектурные шаблоны и инструменты. Углубленное изучение брокеров сообщений для надежных и производительных решений.
Предварительная подготовка
Базовое понимание интеграций, опыт использования с UML и знание основ интеграции систем.
Для кого
Архитектор ПО
Системный аналитик
Руководитель группы\Тимлид
Улучшаемые навыки
Выбор архитектурных шаблонов
Анализ требований
Работа с шаблонами интеграции
Проектирование взаимодействий
Инструменты интеграции
Выбор брокеров сообщений
Практическое проектирование
REST
GraphQL
SOAP
Swagger (OpenAPI)
AsyncAPI
RabbitMQ
Kafka
Программа курса
01
Обзор типового архитектурного ландшафта взаимодействия современных ИТ-систем.
Введение: закон Конвея и его влияние на архитектуру.
Эволюция архитектур: event-driven дизайн;
Монолит: проблемы и ограничения, компонентная архитектура, SOA, MSA
Интеграция в микросервисах:
Внешние сервисы: прямой вызов, шлюз (API-Gateway), BFF.
Внутренние интеграционные процессы: управление потоком, синхронные и асинхронные подходы, cобытийная архитектура.
02
Анализ требований к интеграции, моделей и потоков данных.
Роль архитектуры в интеграции.
Связь требований и архитектуры.
Требования к интеграции: функциональные требования, нефункциональные требования.
Сценарии атрибутов качества
Подбор архитектурного решения в зависимости от требований.
03
Обзор шаблонов интеграции ИТ-систем.
Шаблоны интеграции.
Достижение качества проектируемого решения:
Производительность: Основные стратегии, паттерны и анти-паттерны,.
Согласованность: ACID и CAP-теорема. Двух-фазные фиксации (2PC). Паттерн "Сага". Ослабление согласованности (BASE).
Надежность:Угрозы надежности.Механизмы отказоустойчивости.
Безопасность сервисов: монолит vs. микросервисы.Кросс-доменное взаимодействие.Аутентификация и авторизация
04
Проектирование межсистемного взаимодействия.
Общий процесс проектирования интеграции.
Диаграммы потоков данных.
UML для документирования.
Диаграммы последовательности (Sequence Diagrams).
Инструменты для реализации интеграций: REST, GraphQL, SOAP. Swagger (OpenAPI), AsyncAPI
Выбор брокеров сообщений: RabbitMQ vs Kafka (углублённое сравнение и преимущества Kafka).
Модуль 1: Основы архитектуры интеграции
Практика: Анализ требований к интеграции ИТ-систем и выбор архитектурных шаблонов
Модуль 2: Инструменты интеграции
Практика: Практическое применение инструментов (REST, GraphQL, SOAP) и выбор брокеров сообщений (RabbitMQ, Kafka).
Модуль 3: Проектирование систем
Практика: Создание архитектуры решения и установление связей между сервисами.
Модуль 4: Обеспечение качества процессов
Практика: Решение задач по интеграции и обеспечению качества процессов.
06
Итого на курс 22 часа: теория – 10 ч (45%), практика – 12 ч (55%)
Чему вы научитесь
01
Выбирать оптимальные архитектурные шаблоны, исходя из требований.
02
Анализировать функциональные и нефункциональные требования к интеграции ИТ-систем.
03
Работать с ключевыми шаблонами интеграции и оценивать их надежность и производительность.
04
Проектировать межсистемное взаимодействие с использованием UML и диаграмм потоков данных.
05
Применять инструменты интеграции, такие как REST, GraphQL и SOAP, а также выбирать соответствующий брокер сообщений (RabbitMQ или Kafka).
06
Проектировать интеграции современных ИТ-систем на практике с учетом полученных знаний.