Routing-Strategien für globale Tabellen - 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.

Routing-Strategien für globale Tabellen

Der vielleicht komplexeste Teil der Bereitstellung einer globalen Tabelle ist die Verwaltung der Weiterleitung von Anforderungen. Anforderungen müssen zunächst von einem Endbenutzer an eine Region gesendet werden, die auf irgendeine Weise ausgewählt und weitergeleitet wird. Die Anfrage trifft auf einen Stapel von Diensten in dieser Region, einschließlich einer Rechenschicht, die möglicherweise aus einem Load Balancer besteht, der von einer AWS Lambda Funktion, einem Container oder einem Amazon Elastic Compute Cloud (AmazonEC2) -Knoten unterstützt wird, und möglicherweise auf andere Dienste, einschließlich möglicherweise einer anderen Datenbank. Diese Rechenschicht kommuniziert mit DynamoDB. Dazu sollte sie den lokalen Endpunkt für diese Region verwenden. Die Daten in der globalen Tabelle werden in alle anderen teilnehmenden Regionen repliziert und jede Region verfügt über einen ähnlichen Service-Stack rund um ihre DynamoDB-Tabelle.

Die globale Tabelle stellt jedem Stack in den verschiedenen Regionen eine lokale Kopie derselben Daten zur Verfügung. Sie könnten einen einzelnen Stack in einer einzelnen Region vorsehen und im Falle eines Problems mit der lokalen DynamoDB-Tabelle Remote-Aufrufe an den DynamoDB-Endpunkt einer sekundären Region einplanen. Das ist kein bewährtes Verfahren. Die Latenzen bei einem regionsübergreifenden Zugriff können 100-mal höher sein als beim lokalen Zugriff. Eine back-and-forth Reihe von 5 Anfragen kann Millisekunden dauern, wenn sie lokal ausgeführt werden, aber Sekunden, wenn sie den Globus überqueren. Es ist besser, den Endbenutzer zur Verarbeitung an eine andere Region weiterzuleiten. Um die Ausfallsicherheit zu gewährleisten, benötigen Sie eine Replikation über mehrere Regionen hinweg: Replikation sowohl der Rechenschicht als auch der Datenschicht.

Es gibt zahlreiche Techniken, um eine Endbenutzeranfrage zur Bearbeitung an eine Region weiterzuleiten. Die richtige Wahl hängt von Ihrem Schreibmodus und Ihren Überlegungen zum Failover ab. In diesem Abschnitt werden vier Optionen beschrieben: clientgesteuert, rechnergestützt, Amazon Route 53 und. AWS Global Accelerator