Kategoria: C# i .NET
O szkoleniu
Gdy aplikacja składa się z kilku usług, bazy danych, kolejki i cache’u, samo uruchomienie jej na komputerze programisty potrafi zająć pół dnia, a szukanie błędu w kilku usługach naraz — jeszcze dłużej. Aspire, platforma Microsoftu do budowy aplikacji rozproszonych, porządkuje ten chaos: całą aplikację opisujemy w kodzie C#, uruchamiamy jednym poleceniem i widzimy logi, ślady i metryki wszystkich usług w jednym panelu.
Na szkoleniu uczestnicy budują przykładową aplikację złożoną z kilku usług .NET: z bazą PostgreSQL, cache w Redisie, komunikacją przez RabbitMQ, logowaniem użytkowników przez Keycloak i interfejsem w Blazorze. Na koniec pokazujemy, jak taką aplikację wdrożyć do chmury Azure.
Po szkoleniu:
- będziesz wiedzieć, kiedy architektura rozproszona ma sens, a kiedy jest przerostem formy,
- uruchomisz i zdiagnozujesz aplikację z kilku usług, korzystając z panelu Aspire,
- podłączysz bazę danych, cache i kolejkę komunikatów bez ręcznej konfiguracji kontenerów,
- połączysz usługi komunikacją synchroniczną i opartą na zdarzeniach,
- zabezpieczysz usługi i interfejs w Blazorze logowaniem przez dostawcę tożsamości,
- będziesz wiedzieć, jak przenieść całą aplikację ze środowiska programisty do chmury.
Szkolenie dla programistów C# i .NET, którzy tworzą lub rozwijają aplikacje złożone z wielu usług, a także dla architektów, liderów technicznych i osób z zespołów DevOps współpracujących z programistami .NET.
Czas trwania
2 dni
Program
- Aspire: po co i jak działa
- problemy aplikacji rozproszonych: uruchamianie, konfiguracja, diagnostyka
- kiedy mikroserwisy mają sens, a kiedy wystarczy monolit
- AppHost i ServiceDefaults: opis całej aplikacji w kodzie C#
- panel Aspire: logi, ślady i metryki (OpenTelemetry)
- dodawanie Aspire do istniejącej aplikacji .NET
- Usługi, dane i konfiguracja
- projekty .NET i kontenery jako zasoby aplikacji
- baza PostgreSQL z Entity Framework Core
- Redis jako cache
- konfiguracja, parametry i sekrety
- health checks i odporność na błędy (ponawianie, limity czasu)
- Komunikacja między usługami
- service discovery i komunikacja synchroniczna (HTTP)
- RabbitMQ: kolejki i komunikaty
- architektura oparta na zdarzeniach w praktyce
- śledzenie żądania przez kilka usług w panelu Aspire
- Bezpieczeństwo
- Keycloak jako dostawca tożsamości w aplikacji Aspire
- uwierzytelnianie i autoryzacja w usługach API
- Interfejs w Blazorze
- aplikacja Blazor jako część rozwiązania rozproszonego
- łączenie Blazora z usługami backendu
- logowanie użytkowników w Blazorze
- rzut okiem na usługi w Pythonie i JavaScripcie w aplikacji Aspire
- Wdrożenie
- od środowiska programisty do chmury: publikacja i wdrożenie z Aspire
- wdrożenie do Azure Container Apps (pokaz)
- rzut okiem na wdrożenie przez Docker Compose i do Kubernetesa
Dla grup na zamówienie możemy rozszerzyć szkolenie do trzech dni, np. o testy integracyjne aplikacji rozproszonych, wdrożenie do Kubernetesa albo przeniesienie na Aspire istniejącego systemu zamawiającego.
Training also available in English .
Przeznaczenie i wymagania
Szkolenie jest przeznaczone przede wszystkim dla:
- programistów C# i .NET, którzy tworzą lub rozwijają aplikacje złożone z kilku usług (mikroserwisy, backend z interfejsem w Blazorze),
- architektów i liderów technicznych, którzy rozważają Aspire jako standard pracy zespołu,
- osób z zespołów DevOps i utrzymania, które współpracują z programistami .NET przy wdrożeniach.
Od uczestników oczekujemy:
- umiejętności programowania w C# i podstawowej znajomości ASP.NET Core (np. na poziomie szkolenia ASP.NET Core Web API),
- ogólnej orientacji, czym są kontenery Docker — nie trzeba umieć ich samodzielnie konfigurować.
Wdrożenie do chmury Azure jest pokazem trenera; uczestnicy nie potrzebują własnej subskrypcji Azure.
Certyfikaty
Uczestnicy szkolenia otrzymują imienne certyfikaty sygnowane przez ALX.