Schulungsübersicht
Tag 1: Grundlagen der eventgetriebenen Architektur in Go
- Einführung in EDA
- Was ist Event-Driven Architecture (EDA)?
- Vergleich von Monolithen, Mikro-Diensten und eventgetriebenen Systemen
- Wie Go’s Konkurrenzmodell und leichte Goroutinen es ideal für EDA machen
- Kernkonzepte & Vorteile
- Entkopplung, Skalierbarkeit und Robustheit in Unternehmenssystemen
- Ereignisse, Produzenten, Verbraucher und Ereignisbroker definieren
- Realweltbeispiele und Fallstudien, wo Go hochleistungsfähige Event-Systeme treibt
- CAP-Theorem & Kompromisse in EDA
- Überblick über Konsistenz, Verfügbarkeit und Partitionstoleranz
- Einfluss von EDA auf diese Eigenschaften
- Strategien zur Ausgewogenheit von Konsistenz und Verfügbarkeit in Go-basierten Systemen
Tag 2: Ereignisse, Nachrichten und Kommunikationsmuster in Go
- Ereignistypen verstehen
- Domänenereignisse vs. Integrationsereignisse
- Synchron vs. asynchrone Ereignisse in Go-Anwendungen
- Messaging-Muster in der Praxis
- Veröffentlichen/Abonnieren (Pub/Sub) in Go
- Wie man Ereignispayloads mit JSON, Protocol Buffers oder Avro in Go gestaltet und strukturiert
- Ereignishandling in Go implementieren
- Überblick über gängige Go-Bibliotheken und -Frameworks für Messaging
- Code-Beispiele: Ereignisse mit idiomatischen Go-Mustern dispatchen und verarbeiten
- Hands-on-Sitzung: Einen einfachen ereignisgetriebenen Dienst in Go erstellen
Tag 3: Messaging-Systeme & Ereignisbroker mit Go
- Ereignisbroker auswählen und integrieren
- Überblick über gängige Broker: Apache Kafka, RabbitMQ und NATS
- Vergleich von Anwendungsfällen und Best Practices für Go-basierte Systeme
- Messaging-Infrastruktur einrichten
- Docker Compose-Einrichtung für Kafka, RabbitMQ oder NATS
- Themen, Exchanges, Queues und Channels konfigurieren
- Überblick über Go-Client-Bibliotheken
- Hands-on-Workshop
- Eine Beispiel-Go-Mikro-Dienst anlegen, der Ereignisse erzeugt und verarbeitet
- Dienst mit dem gewählten Ereignisbroker integrieren
- Ereignisflüsse debuggen und testen
Tag 4: Bereitstellung, Überwachung und fortgeschrittene Themen in Go EDA
- Go ereignisgetriebene Anwendungen auf Kubernetes bereitstellen
- Go-Anwendungen für die Produktion containerisieren
- Kafka (oder andere Broker) in Kubernetes-Clustern bereitstellen
- Einführung in KEDA (Kubernetes Event-Driven Autoscaling) zur Skalierung von Ereignisverbrauchern
- Fehlerbehandlung und Überwachung
- Ereignisfehler mit Strategien behandeln
- Überwachbarkeit in Go-Diensten implementieren
- Fortgeschrittene Themen & Q&A
- Serverlose ereignisgetriebene Architekturen mit Go erkunden
- Ereignischoreografie vs. Orchestrierung: Anwendungsfälle und Designaspekte
- Häufige Fallstricke, Erkenntnisse und Best Practices
- Offene Q&A-Sitzung und interaktives Troubleshooting
Voraussetzungen
- Profizienz in Go (Golang), einschließlich der Verwendung von Goroutinen und Channels
- Grundlegendes Verständnis von Software-Architektur-Modellen wie Monolithen und Mikro-Dienste
- Vertrautheit mit Docker und Docker Compose
- Grundkenntnisse von REST-APIs und Netzwerk-Konzepten
- Erfahrung mit Kommandozeilen-Tools und Git
- Optional, aber hilfreich: Vorwissen über Kubernetes und Messaging-Systeme wie Kafka, RabbitMQ oder NATS
Zielgruppe
- Go-Entwickler, die skalierbare, eventgetriebene Anwendungen erstellen
- Software-Ingenieure, die von monolithischen oder REST-basierten Architekturen zu asynchronen Systemen wechseln
- DevOps- und Cloud-Engineer, die mit containerisierten oder verteilten Mikro-Diensten arbeiten
- Technische Architekten und Systemdesigner, die EDA-Muster mit Go erkunden
Erfahrungsberichte (7)
Wir schreiben一些代码用GO语言,并学习一些关于EDA的内容,比如事件及其发生的时间和方式。 (注意:这里的"EDA"由于缺乏上下文信息,无法准确翻译,因此保留了原文。如果"EDA"是特定术语或代号,请提供更多信息以便进行适当翻译。) 鉴于指导方针要求不添加任何解释或格式符号,以下是严格遵循指南的翻译: Wir schreiben一些代码用GO语言,并学习一些关于EDA的内容,比如事件及其发生的时间和方式。 (这里保持了"EDA"不变,因为没有足够的信息来准确地进行翻译。) 根据最新的指示要求不添加任何解释或额外内容,仅提供翻译: Wir schreiben一些代码用GO语言,并学习一些关于EDA的内容,比如事件及其发生的时间和方式。
Alin
Kurs - Event Driven Architecture Custom
Maschinelle Übersetzung
Es war ein interaktiver Kurs, keine Zeit zum Schlafen :)). Auch schön, in Teams zu arbeiten und dann die Ergebnisse gegeneinander auszutauschen.
Alina
Kurs - Event Driven Architecture Custom
Maschinelle Übersetzung
Ich genoss die Diskussionen und die Beispiele am meisten, mit deren Hilfe wir selbst zu den Schlussfolgerungen kommen konnten, die er uns teilen wollte. Mir gefiel der Tempo, die englische Sprache, die Geduld des Dozenten, dass er auch dann nicht sagte, unsere Antworten wären falsch, wenn wir nicht zur besten Lösung kamen, sondern Beispiele für bessere Lösungen zeigte.
Simona
Kurs - Event Driven Architecture Custom
Maschinelle Übersetzung
Die offenen Diskussionen und der Übergang vom Verständnis der Probleme/Gründe (das `warum`) zu `EDA`.
Constantin
Kurs - Event Driven Architecture Custom
Maschinelle Übersetzung
der Ansatz, Dinge vorzustellen, der stark auf Interaktion und Beispiele basiert
Virgil
Kurs - Event Driven Architecture Custom
Maschinelle Übersetzung
Die interaktive Natur des Kurses Der selbstständige Lernansatz, bei dem ihr die Antworten selbst gefunden habt Der praktische Fokus mit Beispielen aus der Realität, die den Begriffen eine größere Vertrautheit verliehen
Roxana Sandu
Kurs - Event Driven Architecture Custom
Maschinelle Übersetzung
Sehr interaktiv. Der Trainer war sehr kenntnisreich und geduldig.
Robert
Kurs - Event Driven Architecture Custom
Maschinelle Übersetzung