Návrh Školení

Den 1: Základy Event-Driven Architektury v Go

  • Úvod do EDA
    • Co je Event-Driven Architektura?
    • Porovnání monolitních, mikroservisních a event-driven systémů
    • Jak Go’va model konkurencí a lehké gorutiny činí tento jazyk ideálním pro EDA
  • Základní koncepty & výhody
    • Oddělení, škálovatelnost a odolnost ve výkonných systémech
    • Definice událostí, producentů, konsumérů a event brokerů
    • Reálné příklady a případy použití, kde Go pohání vysokovýkonné event systémy
  • CAP Theorem & kompromisy v EDA
    • Přehled konzistence, dostupnosti a odolnosti před rozdělením
    • Vliv EDA na tyto vlastnosti
    • Strategie pro vyvážení konzistence a dostupnosti v systémech založených na Go

Den 2: Události, zprávy a komunikační vzory v Go

  • Pochopení typů událostí
    • Domaínové události vs. integrační události
    • Synchronní vs. asynchronní události v aplikacích Go
  • Zpravodajské vzory na praxi
    • Publikování a přihlašování (Pub/Sub) v Go
    • Jak navrhnout a strukturovat event payload pomocí JSON, Protocol Buffers nebo Avro v Go
  • Implementace zpracování událostí v Go
    • Přehled populárních knihoven a rámce pro zpravodajství v Go
    • Kódové příklady: dispečování a zpracování událostí pomocí idiomatických vzorů v Go
    • Praktická sezení: Sestavení jednoduché event-driven služby v Go

Den 3: Zpravodajské systémy & event brokeri s Go

  • Výběr a integrace event brokerů
    • Přehled populárních brokerů: Apache Kafka, RabbitMQ a NATS
    • Porovnání případů použití a nejlepších praktik pro systémy založené na Go
  • Nastavení zpravodajské infrastruktury
    • Nastavení Docker Compose pro Kafka, RabbitMQ nebo NATS
    • Konfigurace témat, směnovacích zařízení (exchanges), front a kanálů
    • Přehled Go klientních knihoven
  • Praktický workshop
    • Sestavení ukázkové mikroservisní služby v Go, která produkuje a konsumuje události
    • Integrace služby s vybraným event brokerem
    • Ladění a testování toku událostí

Den 4: Nasazování, monitoring a pokročilé témata v Go EDA

  • Nasazování event-driven aplikací Go na Kubernetes
    • Kontejnerizace aplikací Go pro produkci
    • Nasazení Kafka (nebo jiných brokerů) v clusterech Kubernetes
    • Úvod do KEDA (Kubernetes Event-Driven Autoscaling) pro škálování event consumerů
  • Zpracování chyb a monitoring
    • Zpracování selhání událostí pomocí strategií
    • Implementace přehlednosti v službách Go
  • Pokročilé témata & Q&A
    • Průzkum bezserverových event-driven architektur s Go
    • Event choreografie vs. orchestration: případy použití a návrhové aspekty
    • Běžné pasti, zkušenosti a nejlepší praktiky
    • Otevřená Q&A sezení a interaktivní řešení problémů

Požadavky

  • Znalost Go (Golang), včetně použití gorutin a kanálů
  • Základní znalost modelů softwarové architektury, jako jsou monolity a mikroservisy
  • Seznámení s Dockerem a Docker Compose
  • Základní znalost REST API a konceptů sítě
  • Zkušenosti s příkazovými nástroji a Gitem
  • Volitelné, ale užitečné: dřívější vystavení Kubernetesu a zpravodajských systémů jako je Kafka, RabbitMQ nebo NATS

Cílová skupina

  • Vývojáři Go vytvářející škálovatelné, event-driven aplikace
  • Softwaroví inženýři přecházející z monolitních nebo REST-based architektur na asynchronní systémy
  • DevOps a cloud inženýři pracující s kontejnerizovanými nebo distribuovanými mikroservisy
  • Techničtí architekti a systémoví navrháři zkoumající EDA vzory pomocí Go
 28 hodiny

Počet účastníků


Cena za účastníka

Reference (7)

Nadcházející kurzy

Související kategorie