Schulungsübersicht

Tag 1: Grundlagen der ereignisgesteuerten Architektur in Go

  • Einführung in EDA
    • Was ist eine ereignisgesteuerte Architektur?
    • Vergleich von Monolithen, Microservices und ereignisgesteuerten Systemen
    • Wie das Konkurrenzmodell und die leichten Goroutines in Go es für EDA ideal machen
  • Kernkonzepte & Vorteile
    • Dekopplung, Skalierbarkeit und Ausfallsicherheit in Unternehmenssystemen
    • Definition von Ereignissen, Produzenten, Verbrauchern und Ereignisbroker
    • Echtzeitbeispiele und Fallstudien, bei denen Go Hochleistungsereignissysteme antrieb
  • CAP-Theorem & Kompromisse in EDA
    • Überblick über Konsistenz, Verfügbarkeit und Teilungstoleranz
    • Auswirkungen von EDA auf diese Eigenschaften
    • Strategien zur Ausgewogenheit zwischen Konsistenz und Verfügbarkeit in Go-basierenden Systemen

Tag 2: Ereignisse, Nachrichten und Communication Muster in Go

  • Verständnis der Ereignistypen
    • Domänenereignisse vs. Integrationsereignisse
    • Synchron vs. Asynchrone Ereignisse in Go-Anwendungen
  • Messagingmuster in der Praxis
    • Publish-Subscribe (Pub/Sub) in Go
    • Wie man Ereignispayloads mit JSON, Protocol Buffers oder Avro entworfen und strukturiert
  • Implementierung von Ereignisbehandlung in Go
    • Überblick über beliebte Go-Bibliotheken und -Frameworks für Messaging
    • Code-Beispiele: Dispatchen und Verarbeiten von Ereignissen mit idiomatischen Go Mustern
    • Hände-dreckig-Sitzung: Erstellen eines einfachen ereignisgesteuerten Dienstes in Go

Tag 3: Messaging-Systeme und Ereignisbroker mit Go

  • Auswahl und Integration von Ereignisbrokern
    • Überblick über beliebte Brokers: Apache Kafka, RabbitMQ und NATS
    • Vergleich der Anwendungsfälle und Best Practices für Go-basierende Systeme
  • Einrichtung von Messaging-Infrastruktur
    • Docker Compose-Einrichtung für Kafka, RabbitMQ oder NATS
    • Konfigurieren von Topics, Exchanges, Queues und Channels
    • Überblick über Go-Clientbibliotheken
  • Hände-dreckig-Workshop
    • Bauen eines Beispiel-Go Microservices, der Ereignisse produziert und verbraucht
    • Integrieren des Dienstes mit dem gewählten Ereignisbroker
    • Fehlerbehebung und Testen von Ereignisflüssen

Tag 4: Bereitstellung, Überwachung und fortgeschrittene Themen in Go EDA

  • Bereitstellen von Go-Ereignisgesteuerten Anwendungen auf Kubernetes
    • Containerisierung von Go-Anwendungen für die Produktion
    • Bereitstellung von Kafka (oder anderen Brokern) in Kubernetes-Clustern
    • Einführung in KEDA (Kubernetes Ereignisgesteuertes Autoscaling) zur Skalierung von Ereignisverbrauchern
  • Fehlerbehandlung und Überwachung
    • Umgang mit Ereignisschäden durch Strategien
    • Implementierung von Observability in Go-Diensten
  • Fortschrittene Themen & Fragen und Antworten
    • Untersuchung von serverlosen ereignisgesteuerten Architekturen mit Go
    • Ereignis-Choreografie vs. Orchestration: Anwendungsfälle und Designüberlegungen
    • Häufige Fehler, gelernte Lektionen und Best Practices
    • Offene Fragen-und-Antwort-Sitzung und interaktive Troubleshooting

 


Voraussetzungen

Go (Golang) Programmierkenntnisse, einschließlich Konkurrenzprogrammierung (Goroutines, Kanäle)
Grundlegendes Verständnis von Softwarearchitektur (Monolithen, Microservices)
Bekanntschaft mit Docker und Docker Compose
Grundlegende Kenntnisse von REST APIs und Netzwerken
Erfahrung mit CLI-Tools und Git
Optional: Bekanntschaft mit Kubernetes und Messaging-Systemen (Kafka, RabbitMQ, NATS)
 
 28 Stunden

Teilnehmerzahl


Price per participant (excl. VAT)

Erfahrungsberichte (7)

Kommende Kurse

Verwandte Kategorien