Побудова мікросервісної архітектури
Навчіться розгортати мікросервісну архітектуру — з Docker, Kubernetes, REST, gRPC, стратегіями масштабування, реальними кейсами та AI-помічниками.
Михайло Єдемський
16+ років досвіду в розробці
Senior Software Engineer в Microsoft

ЯК МИ НАВЧАЄМО:
Кожен теоретичний блок ми закріплюємо практикою. Завдяки 14 практичним завданням ви навчитеся застосовувати мікросервіси у реальних сценаріях: будувати міжсервісну взаємодію, налаштовувати роботу з даними та опрацьовувати розподілені транзакції. Також ви розробите власний план впровадження мікросервісної архітектури для бізнесу — від проєктування до підтримки, включно з тестуванням, розгортанням і моніторингом.
-
Старт: 20 жовтня
-
Тривалість: 14 занять, 7 тижнів
-
Формат: онлайн-заняття щовівторка та щочетверга о 19:00
- Зареєструватися
Після курсу ви:
лектор
Михайло Єдемський
Senior Software Engineer в Microsoft
понад 16 років досвіду в розробці та підтримці програмного забезпечення
-
працював у компаніях Luxoft та Skype
-
має практичний досвід у розробці мікросервісів, які використовують Azure та .NET
-
розробляє інфраструктуру дистрибуції AI-моделей для застосування у відео- та аудіодзвінках
-
підтримує бекенд-системи розподіленого запуску автоматизованих тестів та збору результатів тестування в Skype
Програма
-
01 заняття21.10 19:00
Моноліт vs. Мікросервіси
- Розберете переваги та недоліки основних популярних видів архітектури
- Зрозумієте типові нефункціональні вимоги
- Розглянете основні концепції мікросервісної архітектури
- Набудете навичок використовувати Azure OpenAI для аналізу нефункціональних вимог та пропозицій архітектурних підходів
- Навчитеся застосовувати Copilot для створення базових архітектурних діаграм чи boilerplate-код для порівняння моноліту та мікросервісів
-
02 заняття23.10 19:00
Моделювання мікросервісів
- Навчитеся відокремлювати компоненти для мікросервісів
- Зрозумієте принципи доменно-орієнтованого дизайну (DDD)
- Проєктуватимете доменну модель з використанням DDD
- Розглянете особливості застосування внутрішніх бібліотек
- Вмітимете будувати C4-діаграми
- Зможете автоматично виділяти ключові бізнес-терміни з документації, формувати ubiquitous language і малювати список агрегатів для bounded context за допомогою Copilot
-
03 заняття28.10 19:00
Стратегії декомпозиції
- Дізнаєтеся загальні принципи декомпозиції компонентів
- Навчитеся використовувати патерни декомпозиції
- Розумітимете основні ризики, що можуть виникнути під час декомпозиції моноліту
- Побудуєте алгоритм міграції моноліту до мікросервісів
- Навчитеся використовувати Copilot для пошуку залежностей у коді C# та отримання рекомендацій щодо винесення окремих частин у сервіси
- Зможете застосовувати Copilot для аналізу бізнес-документації та формування кандидатів у bounded context
-
04 заняття30.10 19:00
Взаємодія мікросервісів: Request/Response
- Розглянете проблеми, що можуть виникати внаслідок спільного користування даними
- Дізнаєтеся, чим відрізняються синхронна та асинхронна моделі комунікації
- Зможете проєктувати й обирати технології для синхронних комунікацій
- Навчитеся будувати діаграму послідовностей
- Навчитеся використовувати Azure Application Insights з ML-аналітикою для автоматичного виявлення затримки у викликах між сервісами
- Зможете застосовувати Copilot для генерації прикладів конфігурацій для API Gateway або Service Bus topics/queues
-
05 заняття04.11 19:00
Взаємодія мікросервісів: Event Driven
- Проєктуватимете ефективну подійно-орієнтовану комунікацію
- Дізнаєтеся основні характеристики брокерів повідомлень, зможете обрати брокер під конкретне завдання
- Проєктуватимете реєстри сервісів
- Навчитеся працювати зі зворотно несумісними змінами
- Навчитеся використовувати Azure Application Insights з ML-аналітикою для автоматичного виявлення затримки у викликах між сервісами
- Зможете застосовувати Copilot для генерації прикладів конфігурацій для API Gateway або Service Bus topics/queues
-
06 заняття06.11 19:00
Патерни мікросервісів
- Розберете основні патерни проєктування розподіленого фронтенду
- Зможете використовувати найпопулярніші патерни мікросервісів
- З’ясуєте, як Azure OpenAI може аналізувати метрики та логіку бізнес-кейсів і підказати, коли застосувати CQRS або BFF
- Дізнаєтеся, як Copilot допомагає швидко створити код-шаблон для Aggregator або Proxy
-
07 заняття11.11 19:00
Управління транзакціями
- Розберете базові характеристики транзакцій
- Дізнаєтеся нюанси перебігу транзакцій у розподіленій системі
- Зможете використовувати механізми локів (locks) для синхронізації транзакцій
- Навчитеся будувати механізми скасування транзакції із застосуванням патерну Sagas
- Опануєте базові принципи інтеграції даних у системи моніторингу та аналітики з використанням CDC
- Зможете застосовувати Azure Anomaly Detector для виявлення завислих чи дубльованих транзакцій
- З’ясуєте, як використовувати Copilot для допомоги у створенні кодових шаблонів для Saga (оркестрованої чи хореографованої)
-
08 заняття13.11 19:00
Масштабування
- Дізнаєтеся про основні підходи для масштабування сервісів
- Навчитеся аналізувати вузькі місця (bottlenecks) системи та обирати підхід до масштабування для їх усунення
- Розберете типові стратегії кешування системи та зможете їх використовувати для підвищення продуктивності сервісу
- Вмітимете застосовувати Azure Autoscale з ML та прогнозувати майбутні навантаження, щоб масштабувати ресурси проактивно
-
09 заняття18.11 19:00
Стійкість
- Розберете основні типи помилок, що можуть виникати під час мережевої комунікації
- Опануєте BASE-модель та CAP-теорему
- Дізнаєтеся, коли та як використовувати патерни Circuit Breaker і Bulkhead
- Зможете підвищити стійкість і доступність системи завдяки надлишковості
- З’ясуєте, як Azure Monitor застосовує ML для anomaly detection і прогнозу інцидентів
- Розглянете, як Copilot може генерувати конфігурації для retry та circuit breaker політик, щоб швидше впроваджувати resilience-патерни
-
10 заняття20.11 19:00
Тестування
- Навчитеся проєктувати service meshes
- Дізнаєтеся, коли та як використовувати API Gateway
- Зможете проєктувати тести для мікросервісу
- Вмітимете проєктувати тести для перевірки інтеграції мікросервісів
- Розглянете, що таке test flakiness та як із цим боротися
- З’ясуєте, як GitHub Copilot може автоматично згенерувати Unit-тести для нового сервісу
- Зможете застосовувати Copilot для генерації інтеграційних сценаріїв з описів вимог
-
11 заняття25.11 19:00
Розгортання
- Зрозумієте специфіку DevOps-методології у випадку мікросервісної архітектури
- Зможете спроєктувати CI/CD-пайплайни, що задовольнять вимоги мікросервісної архітектури
- Дізнаєтеся про сучасні інструменти розгортання та оркестрації сервісів
- З’ясуєте, як реалізувати Zero-downtime підхід
- Розберете, як Azure DevOps Pipelines інтегрується з AI для аналізу ризику релізів (на основі історичних даних)
- Розглянете, як Copilot допомагає створювати YAML-пайплайни та оптимізувати скрипти деплойменту
-
12 заняття27.11 19:00
Моніторинг та помітність
- Навчитеся проєктувати систему моніторингу та логування для розподіленої системи
- Дізнаєтесь, як здійснюють розподілене трасування
- Зможете розрахувати основні значення для SLA та SLO систем
- Зрозумієте типові метрики інцидентів
- З’ясуєте, як Microsoft Sentinel та Azure Monitor застосовують ML для виявлення аномалій у логах і метриках
- Розберете, як Copilot допомагає формувати KQL-запити для аналізу даних у Log Analytics
-
13 заняття02.12 19:00
Автентифікація та безпека
- Дізнаєтеся, що впливає на безпеку розподіленої системи
- Розберете специфіку шифрування даних у випадку мікросервісної архітектури
- Опануєте основні механізми міжсервісної автентифікації
- Зможете обрати й реалізувати механізм автентифікації для конкретного випадку
- З’ясуєте, як Azure AD Identity Protection використовує ML для виявлення підозрілих логінів
- Розглянете, як Copilot може допомогти інтегрувати MFA/Conditional Access у коді
-
14 заняття04.12 19:00
Організаційна структура
- Зрозумієте основні критерії вибору організаційної структури для роботи з розподіленими системами
- Дізнаєтеся типові моделі відповідальності
- Навчитесь організовувати команди для розробки мікросервісної архітектури
- Розберете, як Microsoft Viva Insights з AI аналізує ефективність роботи команд і пропонує зміни
- З’ясуєте, як Copilot допомагає автоматизувати створення репортів на основі даних з Azure DevOps або Power BI
Реєстрація
Наприкінці навчання п'ять студентів із найвищими балами за практичні завдання отримають менторську сесію від лектора, де зможуть поставити питання про свій проект чи кар'єру.