Architektura mikroserwisowa

Poznaj mikroserwisy teoretycznie, jak i praktycznie, ze szczególnym naciskiem na poprawną komunikację, architekturę zdarzeniową oraz ich obserwowalność.

Czas: 2-4 dni
Uczestnicy: do 16 osób (1-2 trenerów)

O szkoleniu

Dzięki tym warsztatom zdobędziesz szeroką wiedzę na temat budowania aplikacji rozproszonych przy użyciu najnowszej wersji platformy .NET. Postępując zgodnie z dobrymi wzorcami i praktykami, omówimy szczegółowo tematy dotyczące m.in. architektury sterowanej zdarzeniami, komunikacji między usługami, obserwowalności systemu, testowania, wdrażania, konteneryzacji i orkiestracji — odkryjesz praktyczne rozwiązania dla najczęstszych wyzwań podczas projektowania oraz implementowania mikroserwisów. Ponadto dowiesz się, jak wykorzystać niektóre z uznanych narzędzi open source będących częścią Cloud Native Computing Foundation (cncf.io), aby Twoje rozwiązanie było niezależne od chmury, dzięki czemu zostać wdrożone w dowolnym środowisku (bare metal, on-premise, cloud) unikając potencjalnego uzależnienia od dostawcy.

Warsztaty mają podział 30/70 pomiędzy teorią a praktyką. Wiele z wymienionych aspektów jest przećwiczonych w praktyce, ponieważ ważne jest, aby zarówno zdobyć wymaganą wiedzę teoretyczną, jak i zaimplementować działający kod.

Czego nauczy się uczestnik?

  • Projektowania oraz budowania aplikacji rozproszonych
  • Prawidłowej implementacji komunikacji wewnętrznej pomiędzy usługami
  • Wykorzystania architektury sterowanej zdarzeniami i wzorców transakcyjnych
  • Wzorców transakcyjnych pozwalających na bezpieczne przetwarzanie komunikatów
  • Obsługi rozproszonych procesów ze wzorcem Saga oraz testowania na różnych poziomach
  • Wykorzystanie obserwowalności do monitorowania usług i śledzenia żądań
  • Jak zbudować rozwiązanie niezależne od chmury wykorzystując m.in. narzędzia z CNCF

Program szkolenia

Dzień 1

  • Zagadnienia fundamentalne
  • Implementacja mikroserwisów
  • Architektura aplikacji mikroserwisowej
  • Synchroniczna komunikacja pomiędzy usługami

Dzień 2

  • Praktyczne zastosowanie brokera wiadomości
  • Architektura sterowana zdarzeniami
  • Asynchroniczna integracja — zagadnienia zaawansowane
  • Wzorce transakcyjne

Dzień 3/4

  • Saga — rozproszone procesy biznesowe
  • Testy kontraktowe, integracyjne, end-to-end
  • Korelacja komunikatów
  • Obserwowalność systemu
  • Monitorowanie i metryki aplikacji
  • Rozproszone śledzenie

Grupa Docelowa

Każdy programista skorzysta z tych warsztatów! Zaczynając od fundamentów aplikacji rozproszonych, przechodzimy przez każdy aspekt projektowania, implementacji, testowania, zarządzania i wdrażania mikrousług. Nie tylko początkujący programiści, ale również doświadczeni inżynierowie oprogramowania poszerzą swoją wiedzę, ponieważ podczas pracy z mikroserwisami trzeba stawić czoła wielu wyzwaniom. Przykładowy kod będzie wymagać średnio-zaawansowanej znajomości C#/ASP.NET Core.

Trenerzy

Dariusz Pawlukiewicz

Współzałożyciel DevMentors.io, konsultant, inżynier oprogramowania, architekt w EcoVadis. Entuzjasta Domain-Driven Design oraz systemów rozproszonych. Ex-Microsof MVP oraz prelegent na konferencjach branżowych.

Piotr Gankiewicz

Współzałożyciel DevMentors.io, inżynier oprogramowania w Tickmill pracujący nad systemami tradingowymi, a po godzinach kontrybutor open source rozwijający Iggy.rs (message streaming w Rust). Ex-Microsof MVP oraz prelegent na konferencjach branżowych.