Crash Course: розробка мікросервісів

Тренінг-інтенсив для тих, хто хоче розпочати знайомство з мікросервісами з використанням Spring 6.0, Spring Boot 3.1 та JDK 20
Online
Подія відбулась
Crash Course: розробка мікросервісів
Crash Course: розробка мікросервісів
Подія відбулась
Подія відбулась
Подія відбулась

Опис курсу

Мікросервіси – це шаблон сервіс-орієнтованої архітектури, в якому програми створюються у вигляді наборів невеликих та незалежних сервісних одиниць. Такий підхід до проєктування зводиться до поділу програми на однофункціональні модулі з чітко прописаними інтерфейсами.

Використання мікросервісів допоможе позбутися проблем з деплоєм та масштабуванням, а також дозволяє використовувати для одного проєкту декілька команд з різними мовами програмування, технологіями та фреймворками.

Після проходження Crash-course ви зможете:

  • Використовувати мікросервіси у своїх додатках;
  • Краще розбиратися в поділі системи на модулі та компоненти
  • Розбиратися у розподіленій розробці
  • Організовувати доставку повідомлень через Apache Kafka
  • Зберігати дані в NoSQL/Redis базах даних
  • Використовувати event-driven архітектуру
  • Тестувати мікросервіси

Тренер — Сергій Моренець, Senior Java Developer в Provectus Life. Розробник із 23-річним досвідом, який використовує Spring Framework понад 15 років. Автор книг «Розробка Java додатків»(4 частини) та тренер з 10+ роками досвіду.

Формат:

Дата та час: 15 та 16 червня, 10:00 - 18:00, (Kyiv time, GMT+3).

Тренінг буде проходити в онлайн-форматі українською мовою, кількість учасників обмежена: 20 місць.

Онлайн-подія буде транслюватися на платформі Zoom, посилання на зустріч ми надішлемо вам напередодні воркшопу.

Курс складається з теорії та практики на основі розбору монолітного legacy додатку. Виконуючи практичні завдання, учасники будуть оптимізувати побудову цього застосунку за допомогою мікросервісної архітектури. Після кожного етапу тренер буде надавати фідбек та пояснювати рішення.

Аудиторія

  • Архітектори, які хочуть перейти з монолітної на мікросервісну архітектуру
  • Java-розробники, які хочуть краще розібратися у розробці та дизайні проектів, побудованих за допомогою мікросервісної архітектури

Вимоги до учасників:

  • знання Java SE
  • системи збирання (Maven, Gradle)
  • досвід роботи з Spring Framework/Spring Boot на базовому рівні

Програма

  1. Монолітні програми. Історичні передумови, особливості використання, переваги та недоліки.
  2. Мікросервісна архітектура. Порівняння з монолітною архітектурою, стек технологій, підводні камені.
  3. Розбиття програм на мікросервіси. Розбиття моделі даних, бізнес-логіки, Share доступу до даних та API. Міграція даних.
  4. Інфраструктура Spring Framework. Використання Spring/Spring Boot/Spring MVC/Spring Test для розробки мікросервісів.
  5. Автономність мікросервісів. Використання DTO та клієнтських бібліотек. Бібліотеки mapping даних.
  6. Event-driven architecture та її патерни. Переваги та недоліки, відміна від синхронного надсилання повідомлень.
  7. Обмін повідомленнями за допомогою Apache Kafka. Запуск Kafka за допомогою Docker, відправлення та прийом повідомлень, партиції та топіки, реплікація даних.
  8. MongoDB. Запуск за допомогою Docker, основні налаштування та інтеграція з Spring Data.
  9. Redis. Переваги key-value баз даних, налаштування та інтеграція з Spring Data.
  10. Event sourcing. Основні характеристики та області застосування, команди та події, використання MongoDB.
  11. CQRS. Використання разом із патерном event-sourcing.
  12. Тестування мікросервісів. Використання Test Containers, інтеграція з Spring Boot/Spring Data.

Сергій Моренець, Java Developer Advocate

— Java evangelist, автор книг «Розробка Java додатків», «Ідеальний код» і «Основні помилки Java програмування»

— Має 10+ років досвіду у викладанні та 250+ студентів.

—Доповідач на ІТ-конференціях міжнародного та національного рівня, в тому числі, Devoxx Poland, jPrime, JEEconf, Java Frameworks Days, Dev Talks, Java User Group, JavaDay, IT-Talk.

Увійти
Або поштою
Увійти
Або поштою
Реєстрація через e-mail
Реєстрація через e-mail
Забули пароль?