Szkolenie Wykorzystanie podejścia Event-Driven w architekturze mikroserwisów
Poziom
ŚredniozaawansowanyCzas
16h / 2 dniTermin
IndywidualnieCena
IndywidualnieWykorzystanie podejścia Event-Driven w architekturze mikroserwisów
Praktyczne szkolenie poświęcone projektowaniu systemów mikroserwisowych opartych na zdarzeniach. Uczestnicy porównają komunikację synchroniczną i asynchroniczną, zaprojektują kontrakty zdarzeń oraz przeanalizują idempotencję, spójność ostateczną, sagi, CQRS, gwarancje dostarczenia, obserwowalność i strategie migracji systemów legacy. Warsztaty obejmują również Event Storming oraz analizę typowych awarii i ryzyk związanych z przetwarzaniem zdarzeń. Szkolenie koncentruje się na decyzjach architektonicznych i projektowaniu rozwiązania.
Dla kogo jest to szkolenie?
Dla architektów i projektantów systemów IT, którzy znają podstawy architektury mikroserwisowej, integracji systemów oraz projektowania API
Dla doświadczonych programistów backendowych, którzy samodzielnie tworzą usługi sieciowe oraz rozumieją transakcje, modele danych i obsługę błędów
Dla liderów technicznych i inżynierów DevOps odpowiedzialnych za niezawodność, skalowanie, obserwowalność i wdrażanie systemów rozproszonych
Dla osób znających podstawowe pojęcia związane z REST, komunikacją asynchroniczną i brokerami wiadomości, które chcą świadomie projektować architekturę event-driven
Czego nauczysz się na szkoleniu?
- Porównasz komunikację synchroniczną i asynchroniczną oraz uzasadnisz wybór modelu integracji na podstawie wymagań biznesowych i jakościowych
- Przygotujesz kontrakt zdarzenia obejmujący schemat, metadane, wersjonowanie, identyfikator korelacji oraz zasady kompatybilności
- Zaprojektujesz przepływ zdarzeń z uwzględnieniem idempotencji, ponowień, kolejki błędów, spójności ostatecznej i właściwej gwarancji dostarczenia
- Opracujesz model procesu w technice Event Storming oraz szkic etapowej migracji wybranego przepływu z komunikacji synchronicznej do asynchronicznej
Program szkolenia
Dzień 1
Moduł 1: Wprowadzenie do architektury sterowanej zdarzeniami (EDA)
- Kluczowe koncepcje i zasady EDA – producenci, konsumenci, broker, strumienie zdarzeń, luźne sprzężenie i autonomia usług
- Korzyści i wyzwania podejścia event-driven – skalowalność, odporność, złożoność operacyjna, diagnostyka i spójność danych
- Twierdzenie CAP w praktyce – spójność, dostępność, tolerancja podziału sieci i konsekwencje decyzji architektonicznych
Moduł 2: Porównanie integracji synchronicznej i asynchronicznej
- Zalety i ograniczenia obu podejść – sprzężenie czasowe, opóźnienia, dostępność zależności i złożoność przepływu
- Scenariusze zastosowania – zapytania, polecenia, powiadomienia, procesy długotrwałe i integracja wielu usług
- Dobór modelu integracji do kontekstu biznesowego – wymagany czas odpowiedzi, krytyczność operacji, wolumen i tolerancja niespójności
Moduł 3: Podstawowe pojęcia i koncepcje architektury sterowanej zdarzeniami
- Idempotencja – klucze deduplikacji, bezpieczne ponowienia i odporność konsumentów na wielokrotne dostarczenie
- Komenda i zdarzenie – intencja wykonania operacji, fakt domenowy, nazewnictwo i zakres odpowiedzialności
- Transakcja rozproszona – granice transakcji lokalnych, spójność między usługami i ryzyka blokad
- Saga: choreografia i orkiestracja – koordynacja procesu, akcje kompensacyjne, widoczność przepływu i punkty awarii
- Gwarancje dostarczenia wiadomości – at-most-once, at-least-once, semantyka exactly-once i kompromisy implementacyjne
- Spójność danych i eventual consistency – opóźnienie propagacji, stan przejściowy, kompensacja i komunikacja z użytkownikiem
- CQRS i model odczytu – rozdzielenie zapisu i odczytu, projekcje, odbudowa stanu i koszt utrzymania
- Wersjonowanie schematu wiadomości – kompatybilność wsteczna i przyszła, ewolucja kontraktów oraz dane wrażliwe w zdarzeniach
Moduł 4: Projekt i implementacja rozwiązań event-driven
- Dobór technologii – charakterystyka brokera, przepustowość, retencja, kolejność, kompetencje zespołu i ryzyko zależności od dostawcy
- Model zdarzeń i cykl życia kontraktów – struktura komunikatu, metadane, katalog zdarzeń, właściciel kontraktu i kontrola zmian
- Obsługa błędów i obserwowalność zdarzeń – retry, backoff, dead-letter queue, identyfikatory korelacji, logi, metryki i tracing
- Wzorce przetwarzania zdarzeń – transactional outbox, inbox, consumer groups, partycjonowanie i materialized view
Dzień 2
Moduł 5: Obserwowalność i metryki w systemach event-driven
- Metryki procesów biznesowych – czas realizacji, liczba zdarzeń, opóźnienie konsumenta, błędy, backlog oraz narzędzia monitorowania
- Detekcja problemów i reakcja operacyjna – przerwane przepływy, brakujące zdarzenia, anomalie, alerty i analiza ścieżki zdarzenia
Moduł 6: Typowe problemy w systemach event-driven – duplikacja zdarzeń i mechanizmy deduplikacji
- Spójność ostateczna – nieaktualne modele odczytu, konflikty danych, procesy kompensacyjne i kryteria akceptowalnego opóźnienia
- Wysoki wolumen zdarzeń – partycjonowanie, skalowanie konsumentów, kontrola przeciążenia, kolejność i retencja danych
Moduł 7: Migracja z architektury synchronicznej do asynchronicznej – strategie migracyjne
- Identyfikacja komponentów do dekompozycji – zależności, granice domenowe, krytyczność procesów i ryzyko migracji
- Etapowa adopcja event-driven w systemach legacy – wzorzec Strangler Fig, zdarzenia integracyjne, dual run i kryteria wycofania starego przepływu
Moduł 8: Praktyczna sesja Event Storming
- Event Storming – zdarzenia domenowe, polecenia, aktorzy, polityki, agregaty, systemy zewnętrzne i obszary problemowe
- Warsztatowy model procesu biznesowego – granice kontekstów, przepływ zdarzeń, decyzje architektoniczne, ryzyka i kompromisy