Heutige IT-Systeme bestehen immer seltener aus einzelnen für sich allein stehenden Anwendungen, sondern vielmehr aus stets wachsenden Netzwerkverbunden wie Microservices, Legacy-Komponenten, Apps etc. Diese werden häufig nicht nur von unterschiedlichen Teams, sondern unterschiedlichen Anbietern entwickelt und gewartet, und auch an unterschiedlichen Standorten betrieben. Die Anzahl der möglichen Interaktionswege zwischen voneinander abhängigen Softwarekomponenten steigt exponentiell mit deren Anzahl. Daraus ergibt sich eine Reihe von Herausforderungen:

  • Ausfallsicherheit: Ausfall einer einzelnen Komponente kann zu einer Kettenreaktion führen, welche das ganze System zum Erliegen bringt.
  • Datenschutz: In einem komplexen, unübersichtlichen Netzwerk aus Kommunikationskanälen ist es schwer zu gewährleisten, dass sensible Daten nur dort hingehen, wo sie dürfen.
  • Latenz: Bei klassischer Polling-basierter Kommunikation (Komponente A fragt in zyklischen Intervallen bei Komponente B um neue Daten) ergeben sich Latenzzeiten, die sich in komplexen Systemverbunden exponentiell aufschaukeln können.
  • Betriebskosten und Umwelt: Ständig laufende Dienste verursachen hohe Betriebskosten und CO2-Emissionen, selbst wenn sie längere Zeit in Leerlauf stehen.

Ereignisgetriebene Systeme können helfen, diese Herausforderungen zu meistern. Sie ziehen eine zentrale Schaltstelle (Event Router) zwischen abhängigen Komponenten ein, welche dadurch voneinander gekoppelt werden. Darüber hinaus werden Nachrichten zwischen Komponenten push-basiert ausgetauscht. Dadurch ergeben sich u.A. folgende Vorteile:

  • Der Ausfall einer einzelnen Komponente führt zu keinem Totalausfall; Nachrichten an vorübergehend nicht verfügbare Komponenten können vom Event Router zwischengespeichert werden, somit gibt es keinen Datenverlust.
  • Ein Event Router kann als zentraler Ort zur Verwaltung von Sicherheits-Policies fungieren, um Datenschutz sicherzustellen.
  • Push-basierte Kommunikation statt Polling ermöglicht kurze Latenzzeiten.
  • In Leerlauf befindliche Komponenten können heruntergefahren und bei Bedarf automatisch reaktiviert werden, um Betriebskosten und auch CO2-Emissionen zu sparen.

Kontakt

Dipl.-Ing. (FH) Stephan Leitner

Head of Unit Data Management and Analytics
Telefon: +43 7236 / 33 43 - 674
E-Mail: stephan.leitner@risc-software.at