Ereignisgesteuerte Systeme

Ereignisgesteuerte Systeme sind wie ein gut organisiertes Team in einem Restaurant. Jeder (z.B. Koch, Kellner, Manager) kennt seine Rolle und reagiert sofort auf Signale, wie eine klingelnde Küchenglocke, die anzeigt, dass ein Gericht fertig ist. Dies ermöglicht eine schnelle und reibungslose Bedienung der Gäste. Solche Systeme sind besonders nützlich in Situationen, in denen schnelle Reaktionen erforderlich sind, wie bei grossen Events, wo viele Bestellungen gleichzeitig eintreffen. Sie eignen sich auch für Orte, an denen ständig Dinge passieren, wie in einer belebten Stadt, und man stets auf dem neuesten Stand sein möchte.

1. Was sind ereignisgesteuerte Architekturen?

  • Stellen Sie sich vor, Sie sind in einem grossen Raum mit vielen Menschen, und jeder hat eine Aufgabe. Anstatt jedem Einzelnen direkt zu sagen, was er tun soll, schreiben Sie einfach eine Nachricht auf eine Tafel. Jeder im Raum überprüft die Tafel und handelt entsprechend seiner Rolle. Dies ist das Konzept eines “ereignisgesteuerten Systems”: Anstelle von direkten Befehlen reagiert jeder auf “Ereignisse” oder “Nachrichten”.

2. Apache Kafka – Das Nachrichtenbrett für Computer

  • Kafka ist wie ein grosses, digitales Nachrichtenbrett. Hier können verschiedene Computer (oder Software-Anwendungen) Nachrichten veröffentlichen und andere Computer können diese Nachrichten lesen und darauf reagieren.

3. Wichtige Prinzipien im Design von ereignisgesteuerten Systemen:

  • Ereignisse als Fakten: Stellen Sie sich Ereignisse als Zeitungsartikel vor. Ein Artikel sagt “Es hat geregnet”, nicht “Lass es regnen”. Genauso sollten Ereignisse Fakten darstellen, nicht Befehle.
  • Unveränderlichkeit: Wenn Sie eine Nachricht in einer Zeitung veröffentlichen, können Sie sie nicht mehr ändern. Genauso sollten Ereignisse, sobald sie erstellt wurden, nicht mehr verändert werden.
  • Struktur und Klarheit: Wie bei einem gut geschriebenen Artikel sollte auch jedes Ereignis klar und gut strukturiert sein, damit jeder es versteht.

4. Wie funktionieren ereignisgesteuerte Systeme in der Praxis?

  • Echtzeitverarbeitung: Dies ist wie das Kochen mit einem Live-TV-Programm. Sie sehen die Aktionen sofort, während sie passieren, und nicht später aufgezeichnet. Computer können Daten sofort verarbeiten, sobald sie verfügbar sind.
  • Speichern und Abrufen von Daten: Denken Sie an eine Bibliothek. Bücher (Daten) werden ordentlich auf Regalen (Speicher) abgelegt, und Bibliothekare (Systeme) wissen genau, wo sie nach bestimmten Informationen suchen müssen.

Leave a comment

Your email address will not be published. Required fields are marked *