Synchrone Kommunikation - AWS Präskriptive Leitlinien

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Synchrone Kommunikation

Bei der synchronen Kommunikation initiiert ein Client eine Anfrage an einen Dienst, wie das folgende Diagramm zeigt. Beispiele hierfür sind eine Anforderung zum Abrufen von Informationen, z. B. eine HTTP GET Anforderung, oder eine Anforderung zur Änderung von Daten, z. B. eine Anforderung. HTTP PUT In beiden Fällen wartet der Client auf die Antwort des Servers, bevor er fortfährt. Synchrone Aufrufe sind den meisten Entwicklern vertraut, sie lassen sich leicht implementieren und Fehler beheben und sind in vielen Fällen der allgemein anerkannte Kommunikationsstandard.

Synchrone Kommunikation zwischen Clients und Microservices oder zwischen Microservices.

Zu den Vorteilen der synchronen Kommunikation gehören:

  • Vorhersehbare Flusskontrolle — Deterministische Ausführung und klare Anfrage-Antwort-Zyklen, die im Vergleich zur asynchronen Kommunikation leichter zu verstehen sind.

  • Starke Konsistenz — Sofortige Bestätigung von Datenänderungen und Statusaktualisierungen.

  • Einfache Fehlerbehandlung — Direkte Weitergabe von Fehlern und Ausnahmen.

  • Einfaches Debuggen — Unkomplizierte Nachverfolgung und Überwachung von Anfragen.

  • Protokollunterstützung — Etablierte Protokolle wie HTTP und REST, die eine einfache Implementierung ermöglichen.

Synchrone Kommunikation hat einige Nachteile:

  • Enge Kopplung — Direkte Abhängigkeit der Dienste von der Verfügbarkeit des jeweils anderen.

  • Auswirkungen auf das Netzwerk — Erhöhte Netzwerklast aufgrund ständig offener Verbindungen.

  • Ressourcenauslastung — Höherer Speicherverbrauch durch Beibehaltung des Verbindungsstatus.

  • Kaskadierende Ausfälle — Probleme in einem Dienst können sich schnell im System ausbreiten.