Návrh Školení
Část I: Modelování domény a návrh
-
Principy navrhování podle obchodní domény
-
Metoda Event Storming pro identifikaci doménových entit
-
Omezené kontexty a mapování vztahů mezi nimi
-
Vlastnictví dat a princip jedné databáze na jednu službu
Část II: Smlouvy mezi službami a komunikace
-
Návrh smluv mezi mikroslužbami
-
Verzování rozhraní API a strategie jejich dalšího vývoje
-
Synchrónní komunikační vzory
-
Asynchrónní komunikační vzory
Část III: Vytváření mikroslužeb
-
Struktura čisté architektury
-
Správa závislostí a bezpečnostní aspekty
-
Úvod do nástroje Dapr (Distributed Application Runtime)
-
Komunikace mezi jednotlivými službami
-
Správa stavu aplikací
-
Použití mechanismů pub/sub pro zasílání zpráv
-
Způsoby ukládání tajných dat a konfigurace systému
-
Monitorování pomocí vestavěné telemetrie
Část IV: Testovací strategie
-
Testy kontrolující základní funkčnost služeb
-
End-to-end testování celých aplikací
-
Testování jednotlivých služeb samostatně
Část V: Infrastruktura
-
Pracovní metody definující infrastrukturu kódem (Bicep)
-
Kontejnerizace a orchestrace (Kubernetes či Azure Container Apps)
-
Automatizované řetězce nasazování infrastruktury
-
Služby pro ukládání dat a databáze
Část VI: Nasazování
-
Vytvoření CI/CD řetězců pro automatizovanou distribuci kódu
-
Použití vývojových a produkčních verzí aplikací
-
Nastavení přepínatelných funkcí pomocí feature flagů
Část VII: Monitorování a sledování systému
-
Centralizované ukládání logů
-
Rozložené trasování provádění jednotlivých operací<\/p>
-
Metriky a vizualizace v podobě přehledných panelů
-
Sledování stavu systému a generování upozornění na anomálie
Část VIII: Odolnost a obnova po poruchách
-
Kontroly zdravotního stavu systémů a mechanismy ověřování připravenosti služeb k provozu
-
Zacházení se selháními výpočetních jednotek
-
Postupy řešení problémů v případě výpadku infrastruktury
-
Opatření na obnovu jednotlivých služeb po jejich selhání
Požadavky
- Dobrá programátorská praxe minimálně v jednom backendovém jazyce (C#, Java, Python či podobně)
- Základní znalost REST API a protokolu HTTP
- Orientace na Git a pracovní postupy spojené s verzováním kódu
- Zkušenosti s cloudovou platformou (např. Azure, AWS nebo GCP), včetně nasazování aplikací či orientace v
příslušném portálu)
Komu je kurz určen?
-
Týmy vývojářů přecházející z monolických systémů na mikroslužby
-
Softwaroví architekti navrhující distribuované systémy
-
Týmy, které již s mikroslužbami pracují a chtějí zlepšit jejich návrh, škálovatelnost a spolehlivost
-
Techničtí profesionálové hledající praktický přístup k tvorbě cloud-native architektur
Reference (4)
Instruktor měl bohaté znalosti o tématickém obsahu kurzu i o souvisejících oblastech. Byl schopen odpovědět na naše otázky, nebo si poznamenat ty otázky, na které neměl okamžitou odpověď, a vrátil se k nim později.
Abe Sabbagh - Enbridge
Kurz - Advanced RabbitMQ - 2 Days
Přeloženo strojem
Možnost provádět nezávislé cvičení v tréninkovém prostředí.
Tomasz - PKO Zycie Towarzystwo Ubezpieczen S.A.
Kurz - Kafka for Administrators
Přeloženo strojem
technická příprava učitelů
Giorgio - Asystel-BDF S.p.A.
Kurz - Creating a Service Mesh with Istio and Kubernetes
Přeloženo strojem
Velmi praktické příklady. Školenec se snažil udržovat tempo, ve kterém mohl následovat každý, i když skupina byla v ohledu na znalosti poměrně nehomogenní. Poskytl spoustu podpory téměř každému, kdo ji požadoval :)
Georgi - BMW SA
Kurz - Apache Kafka for Developers
Přeloženo strojem