Ereignisgesteuerte Systeme - Cheatsheet.pdf

Ereignisgesteuerte Systeme - Cheatsheet
Ereignisgesteuerte Systeme - Cheatsheet Definition und Grundlagen der ereignisbasierten Architektur Definition: Architekturstil, der auf der Erzeugung, Erkennung und Reaktion auf Ereignisse basiert. Details: Ereignis: Jede diskrete Änderung eines Systemzustands. Reaktive Systeme: Reagieren auf eintretende Ereignisse in Echtzeit. Ereignisquelle und -senke: Quelle erzeugt Ereignisse, Senke verarbeit...

© StudySmarter 2024, all rights reserved.

Ereignisgesteuerte Systeme - Cheatsheet

Definition und Grundlagen der ereignisbasierten Architektur

Definition:

Architekturstil, der auf der Erzeugung, Erkennung und Reaktion auf Ereignisse basiert.

Details:

  • Ereignis: Jede diskrete Änderung eines Systemzustands.
  • Reaktive Systeme: Reagieren auf eintretende Ereignisse in Echtzeit.
  • Ereignisquelle und -senke: Quelle erzeugt Ereignisse, Senke verarbeitet sie.
  • Ereignisstrom: Abfolge von Ereignissen, die verarbeitet werden.
  • Vorteile: Hohe Modularität, Flexibilität und Erweiterbarkeit.
  • Technologien: Event Sourcing, CQRS (Command Query Responsibility Segregation), Message Brokers.

Design Patterns: Publish-Subscribe und Event Sourcing

Definition:

Design Patterns für ereignisgesteuerte Architektur; Publish-Subscribe ermöglicht Entkopplung zwischen Sender und Empfänger; Event Sourcing speichert Systemzustand als Sequenz von Ereignissen.

Details:

  • Publish-Subscribe: Nachrichtenaustauschmechanismus, bei dem Sender (Publisher) Ereignisse veröffentlichen und Empfänger (Subscriber) sich für diese Ereignisse anmelden.
  • Niedrige Kopplung zwischen Komponenten.
  • Unterschiedliche Channels/Themen für verschiedene Ereignisse.
  • Event Sourcing: Zustand eines Systems wird durch eine vollständige Historie aller stattgefundenen Ereignisse abgebildet.
  • Ereignisse sind unveränderlich und werden in einer Ereignislog gespeichert.
  • Ermöglicht Rekonstruktion des Systemzustands durch Replay der Ereignisse.

Konsistenzmodelle und Synchronisationstechniken in verteilten Systemen

Definition:

Konsistenzmodelle und Synchronisationstechniken in verteilten Systemen betreffen die Methoden zur Gewährleistung von Datenkonsistenz und Koordination zwischen verteilten Speicherinstanzen.

Details:

  • Gängige Konsistenzmodelle: Starke Konsistenz, Eventual Consistency, Weak Consistency
  • Quorum-Based Consistency: Lese-/Schreib-Quoren (\text{R} + \text{W} > \text{N})
  • CAP-Theorem: Trade-offs zwischen Konsistenz (C), Verfügbarkeit (A), und Partitionstoleranz (P)
  • Synchronisationstechniken: Mutex (Mutual Exclusion), Lamport-Zeitstempel, Sequenznummern, verteilte Sperren
  • Locking-Mechanismen: Pessimistisches Sperren, Optimistisches Sperren
  • Ziel: Minimierung von Inkonsistenzen und Vermeidung von Race Conditions

Protokolle für den Nachrichtenaustausch (MQTT, AMQP)

Definition:

Protokolle für den Nachrichtenaustausch (MQTT, AMQP) ermöglichen Kommunikation in ereignisgesteuerten Systemen.

Details:

  • MQTT: Leichtgewichtiges Protokoll für Machine-to-Machine (M2M) Kommunikation.
  • AMQP: Zuverlässiges, plattformunabhängiges Messaging-Protokoll.
  • MQTT Merkmale: Nutzung von Publish/Subscribe-Architektur, geringe Bandbreite
  • AMQP Merkmale: Nachrichtenvermittler, Unterstützung von Queueing, Transaktionen
  • Nutzungsbeispiele: IoT (MQTT), Unternehmensanwendungen (AMQP)
  • Vorteile: Effiziente Netzwerkressourcennutzung (MQTT), Garantie der Nachrichtenübertragung und Verteilung (AMQP)

Planungsalgorithmen und Prioritätensetzung in Echtzeitsystemen

Definition:

Planungsalgorithmen und Prioritätensetzung in Echtzeitsystemen bestimmen, wie Aufgaben mit unterschiedlichen Zeitanforderungen effizient ausgeführt werden.

Details:

  • Planungsalgorithmen: FCFS, SJF, RR, EDF, RM
  • FIFO (First In, First Out): Abfolge nach Eingang
  • SJF (Shortest Job First): Kürzeste Aufgabe zuerst
  • RR (Round-Robin): Rotierende Zuteilung von Zeitfenstern
  • EDF (Earliest Deadline First): Frühestes Fälligkeitsdatum zuerst
  • RM (Rate Monotonic): Kürzere Perioden haben höhere Priorität
  • Prioritätensetzung: Statische und dynamische Zuweisung
  • Statisch: Feste Prioritäten vorab definiert
  • Dynamisch: Prioritäten ändern sich zur Laufzeit

Echtzeitbetriebssysteme (RTOS)

Definition:

Betriebssysteme, die deterministische Reaktionen auf externe Ereignisse bieten, insbesondere in zeitkritischen Anwendungen.

Details:

  • Zeitverhalten: Genau definierte und vorhersagbare Zeitgrenzen.
  • Aufgabenplanung: Verwenden von Prioritäten, Preemption und Scheduling-Algorithmen.
  • Typen: harter und weicher Echtzeitbetrieb (je nach Toleranz für Deadline-Verletzungen).
  • Anwendungsbeispiele: Industrielle Steuerungen, Automobilbereich, Telekommunikation.

Middleware-Typen: Message-Oriented Middleware und Object Middleware

Definition:

Erläutere Middleware-Typen in Bezug auf nachrichtenorientierte und objektorientierte Ansätze.

Details:

  • Nachrichtenorientierte Middleware (Message-Oriented Middleware, MOM): baut auf Nachrichtenwarteschlangen auf, um Kommunikation zwischen verteilten Systemen zu ermöglichen.
  • Objekt-Middleware: Erlaubt entfernten Objekten direkte Interaktion über verteilte Systeme hinweg.
  • Beispiele für MOM: RabbitMQ, Apache Kafka
  • Beispiele für Objekt-Middleware: CORBA, RMI
  • Vorteile MOM: Asynchronität, Entkopplung der Systeme
  • Vorteile Objekt-Middleware: Direkte Methodenausführung, geringerer Overhead bei synchroner Kommunikation
  • Anwendungskontexte: MOM ideal für lose gekoppelte Systeme, Objekt-Middleware für Systeme, die direkte und synchrone Methodenaufrufe erfordern.

Sicherheitsaspekte im Nachrichtenaustausch

Definition:

Sicherheitsaspekte im Nachrichtenaustausch beziehen sich auf Maßnahmen und Protokolle, die die Vertraulichkeit, Integrität und Authentizität der übertragenen Nachrichten gewährleisten.

Details:

  • Vertraulichkeit: Nachrichteninhalte für unbefugte Dritte unzugänglich machen (z.B. mittels Verschlüsselung).
  • Integrität: Sicherstellen, dass Nachrichten während der Übertragung nicht verändert werden (z.B. durch Hash-Funktionen).
  • Authentizität: Überprüfung der Identität der Kommunikationspartner (z.B. durch digitale Signaturen).
  • Verfügbarkeit: Schutz der Nachrichtendienste vor Ausfällen (z.B. durch redundante Systeme).
  • Sichere Protokolle: Einsatz sicherer Kommunikationsprotokolle wie TLS/SSL.
Sign Up

Melde dich kostenlos an, um Zugriff auf das vollständige Dokument zu erhalten

Mit unserer kostenlosen Lernplattform erhältst du Zugang zu Millionen von Dokumenten, Karteikarten und Unterlagen.

Kostenloses Konto erstellen

Du hast bereits ein Konto? Anmelden