Praktyczne projektowanie architektury w systemach modularnych, rozproszonych i Event Driven | Instytut PWN
WARSZTAT - PWNing Online Security & Code 2020

Praktyczne projektowanie architektury w systemach modularnych, rozproszonych i Event Driven

Do konferencji zostało jeszcze:
20
dni
20
godziny
22
minuty
21
sekundy

Od architekta oczekujesz, że na podstawie celu biznesowego i oczekiwanych funkcjonalności dostarczy implementowalny projekt systemu, od wysokopoziomowych diagramów, przez narzędzia i niskopoziomowe rozwiązania techniczne, tak abyś dostał dokładnie to czego potrzebujesz, otrzymał niezbędne charakterystyki jakościowe, jak na przykład niskie koszty utrzymania, i byś jednocześnie nie przepłacił za całość.

Tymczasem większość zespołów deweloperskich podchodzi do architektury systemów beztrosko. Nie wie na jakie cechy niefunkcjonalne optymalizować swoją architekturę, nie bierze pod uwagę ograniczeń ludzkich i organizacji, zbyt szeroko definiuje odpowiedzialności modułów i mikroserwisów, nie wie jaki styl architektoniczny rozwiązania przyjąć i dlaczego, lub wprowadza kosztowne podejścia i narzędzia, które nie zwracają nakładu pracy na nie poniesionego. Wiele zespołów nie potrafi wizualizować, weryfikować i analizować możliwych architektur.

Źle przygotowana architektura jest w stanie pogrzebać każdy projekt, niezależnie od poziomu operowania językiem, bibliotekami i frameworkami. Dlatego pierwsze szkolenie które doradzamy dotyczy właśnie architektury.

Na tym szkoleniu uczymy wszystkiego co niezbędne, by świadomie tworzyć rozwiązania w jednym z trzech najpopularniejszych stylów architektonicznych: modularnym monolicie, rozproszonych synchronicznych mikroserwisach, i mikroserwisach asynchronicznych, podejściu naczej zwanym Event Driven Architecture.

W ramach szkolenia uczestnicy ćwiczą trzy style projektując nowy system: modularny monolit, synchronicznie komunikujące się mikroserwisy, system rozproszony asynchroniczny (Event Driven). Omawiamy typowe błędy i analizujemy rozwiązania. Uczymy jak świadomie wybrać styl adekwatny do sytuacji, jak tworzyć części systemu z wysokim SLA, jak zapewnić wysoką wydajność, jak podzielić moduły i mikroserwisy. Pokazujemy najnowsze rozwiązania takie jak rozproszone event logi (Apache Kafka) i doradzamy jak ich możliwości wpływają na projekt. Analizujemy jak struktura organizacyjna i zakładane cechy niefunkcjonalne wpływają na decyzje projektowe. Wszystko to podajemy na przykładach z życia, z projektów w których braliśmy sami udział.

To szkolenie nauczy Cię…

  • świadomie i profesjonalnie zdecydować na co optymalizują architekturę i które obostrzenia organizacyjno techniczne muszą wziąć pod uwagę
  • stworzyć profesjonalny projekt architektoniczny w modelu C4, zweryfikować jego poprawność, przedstawić go inwestorowi oraz współpracować z innymi architektami nad projektem  większego systemu
  • świadomie zdecydować czy projekt wymaga modularnego monolitu, mikroserwisów synchronicznych, czy architektury event-driven i w jakim zakresie
  • zapewnić wysokie SLA ścieżek krytycznych, i odpowiednią ich wydajność
  • zapewnić elastyczność systemu i gotowość na nowe wymagania przy minimalnym koszcie rozwoju
  • i w końcu stworzyć architekturę która będzie w pełni implementowalna

Program

25 listopada
09:00
Jak organizować architekturę w firmie, jak organizować architektów, jak być odpowiedzialnym architektem i jak pracować z innymi
Narzędzia i notacje (model C4)
Niefunkcjonalne wymagania, ograniczenia organizacyjne, ludzkie, formalne, ich wpływ na architekturę
Świadomy wybór kierunku optymalizacji architektury i jej konsekwencje (koszty utrzymania, wydajność, SLA, odporność na awarie, nakład inicjalny pracy, możliwości rozwoju i elastyczność, dostępność)
-17:00
Trzy style architektury współczesnej: modularny monolit
  • skąd się wziął monolit niemodularny, czemu wiele projektów tak kończy
  • jakie są zalety, wady, kiedy świadomie używać
  • ryzyko wdrożenia z przykładami; jakie są sposoby minimalizacji problemu
  • jak dzielić na moduły: czym jest prawdziwy moduł i zmiana paradygmatu dzielenia (zachowania, nie dane)
  • ćwiczenia w budowaniu architektury modularnego monolitu
26 listopada
9:00
Trzy style architektury współczesnej: system rozproszony synchroniczny
  • jakie są zalety, wady, kiedy świadomie używać
  • jak wyznaczać granice, moduły vs mikroserwisy
  • jak testować systemy rozproszone
  • metody komunikacji i kontroli: orkiestracja vs choreografia
  • jak obsłużyć błędy komunikacji i brak transakcyjności
  • jak zapewnić wydajność przy narzucie komunikacji sieciowej
  • ćwiczenia w budowaniu architektury rozproszonej synchronicznej
Trzy style architektury współczesnej: system Event Driven (rozproszony asynchroniczny)
  • jakie są zalety, wady, kiedy świadomie używać
  • procesowanie strumieni, łączenie zdarzeń z różnych strumieni i zapewnienie następstwa czasowego
  • serwisy stanowe a bezstanowe, read model
  • Sagi i procesy długotrwające
  • obsługa błędów w systemie asynchronicznym
  • nowoczesne narzędzia do messagingu na przykładzie Apache Kafka: liniowa skalowalność i persystencja zdarzeń, gwarancje kolejności, partycjonowanie, grupy konsumentów, grupy konsumentów, compacted topic i automatyczny read model, transakcyjność publikacji
  • ćwiczenia w budowaniu architektury Event Driven
Świadomy wybór stylów architektonicznych obecnych w projekcie: kiedy, które i jak wybrać. Jak i kiedy mieszać. Jak wielkość organizacji i projektu wpływa na zmianę podejścia
Typowe błędy projektów architektonicznych na przykładach
Optymalizacja na niskie koszty rozwoju
Optymalizacja na wysokie SLA
-17:00
Narzędzia do weryfikacji architektury w monolitach i systemach rozproszonych (archunit, consumer driven contract)

EKSPERT

Adnotacja 2020-03-27 104440

JAKUB NABRDALIK

Architekt rozwiązań z 17-letnim, praktycznym doświadczeniem handlowym, w tym w zakresie mikrousług, azure, java/c#/groovy/kotlin, zarządzania oddziałem IT i wiodącymi zespołami. Nauczyciel architektury, Domain Driven Design, systemów rozproszonych, Test/Behavior Driven Development i Spring przez ostatnie 10 lat. Ponad 60 rozmów, 100 warsztatów i wiele długo działających systemów na produkcji. Ex WJUG, WGUG, lider Spring Labs, w komitecie programowym Devoxx PL odpowiedzialnym za ścieżkę architektury.

Uczestnicy

Kto powinien wziąć udział w szkoleniu?

  • Developerzy / architekci

 

Wymagania:

  • podstawowa znajomość jakiegokolwiek języka obiektowego
  • Własny komputer z zainstalowanymi:
    • git
    • JDK 11
    • IntelliJ IDEA (wersja community wystarczy)
  • wyjście na świat (bez firewalli firmowych i proxy)

Miejsce i termin

25 - 26 listopada, ONLINE
Microsoft Teams

Podobne wydarzenia:

Konferencja
PWNing Online Security & Code 2020

Formularz rejestracyjny

Warunki uczestnictwa

Warunkiem udziału w warsztacie jest wypełnienie poniższego formularza zgłoszeniowego oraz akceptacja regulaminu.

Podstawą do uiszczenia należności jest faktura pro forma, która zostanie przesłana w postaci PDF na adres mailowy podany w zgłoszeniu.

Nieuregulowanie faktury pro forma nie jest równoznaczne z rezygnacją z udziału w warsztacie.

Zasady składania rezygnacji zostały określone w regulaminie.

W przypadku złożenia rezygnacji w terminie późniejszym niż 14 dni kalendarzowych przed terminem wydarzenia, organizator zastrzega sobie prawo, zgodnie z regulaminem, do obciążenia zamawiającego pełnymi kosztami udziału w konferencji.

——————————————————————–

Warsztaty odbędą się w formule online za pośrednictwem platformy MS Teams

Termin

25 - 26 listopada 2020, ONLINE

Cennik/kod

od 01 sierpnia 2020
1899 PLN
netto + Vat 23%
(do zapłaty: 2335.77 PLN)

Dane do wystawienia faktury VAT

Firma/Instytucja
Osoba fizyczna

Warunki zwolnienia z VAT

Tak - oświadczam, że udział w szkoleniu finansowany jest ze środków publicznych
Nie - udział w szkoleniu nie jest finansowy ze środków publicznych

Typ płatności

Przelew po otrzymaniu faktury PRO FORMA
Pay-U