Мікросервіси: від основ до продакшену
Дізнайтесь, як будувати мікросервіси на практиці — від архітектури до деплою та моніторингу з AI-помічниками.
Михайло Єдемський
16+ років досвіду в розробці
Principal Software Engineer у Microsoft

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