Microservices - podejście kompleksowe oparte o DDD, Spring Boot, Cloud

Warsztat ekspercki to coś więcej niż szkolenie. To praca w kontekście konkretnych problemów.

Kod: DDD-complex
Kategoria: Domain Driven Design
Forma:
Czas trwania: 4 dni
Grupa docelowa: developerzy
architekci
Logistyka: W siedzibie klienta lub w innym dowolnym miejscu.
Data i dokładny zakres do ustalenia podczas analizy przed-szkoleniowej.

Szkolenie jest przeznaczone dla osób, które chcą rozwinąć swoje myślenie o architekturze aplikacji opartych o Spring Boot.

Na poziomie architektury wdrożeniowej zastosujemy podejście microservices z wykorzystaniem Spring Cloud

Na poziomie architektury systemowej podejmiemy złożony problem biznesowy wymagający strategicznego podejścia do modelowania (DDD) a co za tym idzie podziału na moduły oraz racjonalnego podejścia do ich integracji. Przejdziemy przez kilka scenariuszy integracyjnych oraz kilka technik ich implementacji.

Na poziomi architektury aplikacji posłużymy się nowoczesnymi wzorcami i stylami architektonicznymi.

Na koniec nasz system oparty o Spring Boot nie będzie przypominał hello world z tutoriali, zostaniemy z recepturą postępowania odpowiednią do nietrywialnych projektów.

Wyróżniki warsztatu

  • Zintegrowane podejście łączące analizę, architekturę i framework Spring
  • Nietrywialne przykłady modelowania
  • Dbanie o każdy poziom architektury

Program Warsztatu eksperckiego

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

  1. Architektura w stylu C4 - projekt systemu warsztatowego
    1. Context - otoczenie biznesowe
    2. Containers - arch. wdrożeniowa
    3. Components - arch systemu
      1. Integracja modułów
      2. Wzorce strategiczne
    4. Classes - arch. aplikacji, wzorce taktyczne
  2. Dekompozycja funkcjonalna
    1. Domain-Driven Design na poziomie strategicznym
    2. Event Storming
    3. Motywacja, Conway’s Law
    4. Decentralizacja danych / Polyglot Persistence
    5. Strategie określania granic serwisu
    6. Problem Single Point of Failure
    7. Typowe pułapki przy rozbijaniu monolitu
  3. Spring i Spring Boot - szybkie prowadzenie
    1. Motywacja
    2. Proxy
    3. Spring Bean
    4. Podstawowe elementy autokonfiguracji
  4. REST ze Spring MVC
    1. HTTP jako protokół aplikacyjny
    2. Zalety i pułapki cache
    3. Zasoby i ich reprezentacje
    4. Poziomy dojrzałości REST
    5. REST jako obieg dokumentów, a warstwa domenowa serwisu
    6. HATEOAS jako mechanizm maszyny stanów
    7. Wersjonowanie API
    8. Typowe pułapki
  5. Architektura serwisu
    1. Model domeny i model danych
    2. Spring Data JPA and Spring Data MongoDB
    3. Granice obiektów
    4. Test-Driven Development i reguł biznesowych
    5. Onion Architecture / Ports and Adapters
    6. Warstwa aplikacyjna jako sterownik procesu
    7. Eventual consistency
    8. Command Query Responsibility Segregation
    9. Zdarzenia domenowe ze Spring Application Events
  6. Integracja systemów rozproszonych (Spring Cloud Netflix)
    1. Service Discovery
    2. Client-Side Load Balancing
    3. Hystrix jako Cirtcut Breaker
    4. Distributed Tracing z Zipkinem
    5. Config Server
    6. Monitorowanie
  7. Integracja systemów rozproszonych (Spring Cloud Stream)
    1. Event vs Command vs Message
    2. Process Manager/Saga
    3. Kolejki
    4. Event Broker i Event Store
    5. Skalowalny Atom Feed
    6. Rozszerzalność/pluginowość architektury


Pobierz program w formacie PDF

Trenerzy

Poznaj ekspertów, którzy mogą poprowadzić Twój Warsztat.

Materiały związane z warsztatem

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

Zapytaj o warsztat

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