О чём курс
Современный курс для архитекторов и ИТ-специалистов. Освойте проектирование и интеграцию ИТ-систем, используя передовые архитектурные шаблоны и инструменты. Углубленное изучение брокеров сообщений для надежных и производительных решений.
Предварительная подготовка
Базовое понимание интеграций, опыт использования с 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
Проектировать интеграции современных ИТ-систем на практике с учетом полученных знаний.