Architektura Command-query Responsibility Segregation oraz Event Sourcing

Kod: DDD-CqRS
Kategoria: Domain Driven Design
Forma: 50% wykłady / 50% warsztaty
Czas trwania: 2 dni
Grupa docelowa: DevOps
developerzy
architekci
Logistyka: W siedzibie klienta lub w innym dowolnym miejscu.
Data i dokładny zakres do ustalenia podczas analizy przed-szkoleniowej.

Szkolenie prezentuje architekturę CqRS wraz z alternatywnymi podejściami do implementacji stosu Read i Write.

Event Sourcing jest jedną z opcji przechowywania danych w stosie Write.

Szkolenie jest przeznaczone dla zaawansowanych programistów, projektantów i architektów poszukujących rozwiązań dla systemów o złożonej logice i pracujących pod dużym obciążeniem.

W trakcie szkolenie będziemy podejmować decyzje architektoniczne bazując na modelowaniu taktycznym i strategicznym DDD stosując Event Storming.

Z uwagi na specyfikę techniczną podczas szkolenia możemy wybrać stos technologiczny (Java, .Net, PHP, Ruby, Node.js).

Wyróżniki szkolenia

  • Elementy DDD i Event Stormingu
  • Kontekst Microservices i Cloud
  • Kilka podejść do integracji komponentów architektury (np. bez Event Sourcingu)

Program Szkolenia

Program jest ramą w jakiej możemy się poruszać merytorycznie - program dla konkretnego szkolenia dedykowanego ustalamy z grupą na podstawie analizy przed-szkoleniowej.

  1. Motywacja Event Sourcingu
    1. Problemy z klasycznym przechowywaniem stanu
    2. Audyt
    3. Temporal queries
    4. Single Source of Truth
    5. Czym jest zdarzenie domenowe?
    6. Big Picture Event Storming
  2. Modelowanie
    1. Zrozumienie konceptu Bounded Contextów oraz Agregatów
    2. Różnica pomiędzy komendą, a zdarzeniem
    3. Design Level Event Storming
    4. Modelowanie agregatów w ujęciu Event Sourcing - najlepsze praktyki
    5. Testowanie jednostkowe agregatów w ujęciu Event Sourcing
    6. Event Sourcing jako programowanie funkcyjne
    7. Agregaty, które zmieniają stan i produkują zdarzenia
  3. Persystencja
    1. Serwisy aplikacyjne
    2. Wprowadzenie do architektury hexagonalnej
    3. Porównanie dostępnych narzędzi
    4. Event store jako baza danych i broker wiadomości
    5. Skalowalny Atom Feed
    6. Skalowalność poprze partycjonowanie
  4. Odczyt danych
    1. Snapshoty i Projekcje
    2. Optymalizacja modelu do odczytu
    3. CQRS
    4. Parallel Models
  5. Swiat microserwisow i CQRS/ES
    1. Eventual Consistency
    2. Horyzontalne asymetryczne skalowanie
    3. Blue/Green Deployments
    4. Dopasowany model danych
    5. API Gateway
    6. Serwis agregujący zdarzenia ze strumieni z różnych mikroserwisów
  6. Zaawansowane problemy
    1. Wersjonowanie schematu zdarzeń
    2. Problem "Read your own writes"
    3. Problem monotonicznych odczytów
    4. Retrospective events
    5. Compensation events
    6. Komunikacja pomiędzy modelem do odczytu i zapisu


Pobierz program w formacie PDF

Trenerzy

Poznaj ekspertów, którzy mogą poprowadzić Twoje szkolenie.

Materiały związane ze szkoleniem

Idea renesansowej pracowni - Bottegi zakłada nieustanną pracę jej członków i dzielenie się jej wynikami.

Zapytaj o szkolenie

Imię i nazwisko:
Firma:
E-mail:
Nr tel:
Temat:
Wiadomość:

Jeżeli preferujesz osobisty kontakt to zawsze możesz zadzwonić.

Iwona Sobótka

Koordynatorka szkoleń


Wyrażam zgodę na przetwarzania danych osobowych zgodnie z ustawą o ochronie danych osobowych w związku z wysłaniem zapytania przez formularz kontaktowy.

Podanie danych jest dobrowolne ale niezbędne do przetworzenia zapytania. Zastałem/am poinformowany/na, że przysługuje mi prawo dostępu do swoich danych, możliwości ich poprawienia, żądania zaprzestania ich przetwarzania.

Administratorem danych osobowych jest Bottega IT Minds, ul. Jana Sawy 2, 20-632 Lublin.


Klauzula informacyjna