Übersicht
Die Lösung Virtuelles Wartezimmer in AWS trägt dazu bei, eingehende Benutzeranfragen an Ihre Website bei einem großen Aufkommen an Datenverkehr zu puffern. Sie schafft eine Cloud-Infrastruktur, die den eingehenden Datenverkehr auf der Website vorübergehend auslagert, und bietet Optionen zur Anpassung und Integration eines virtuellen Warteraums. Der Warteraum dient als Wartebereich für die Besucher Ihrer Website und lässt den Datenverkehr passieren, wenn genügend Kapazität vorhanden ist.
Beispiele für Großereignisse, die zu einem sprunghaften Anstieg des Datenverkehrs auf der Website führen können:
- Verkaufsstart von Eintrittskarten für Konzerte oder Sportveranstaltungen
- Schlussverkauf oder sonstige große Verkaufsaktion, wie z. B. Black Friday
- Einführung neuer Produkte mit umfangreichen Marketing-Ankündigungen
- Zugriff auf Prüfungen und Teilnahme an Online-Tests und -Unterricht
- Freigabe von Zeitfenstern für Arzttermine
- Start eines neuen Direktservices für Kunden, der Kontoeinrichtungen und Zahlungen erfordert
Vorteile
Beim Eintritt in den Warteraum wird den Benutzern eine Warteschlangennummer zugewiesen. Sie behalten ihre Position in der Warteschlange und verlassen den Warteraum in Richtung Ziel-Website erst dann, wenn sie an der Reihe sind.
Die Lösung kann den Datenverkehr für Großereignisse steuern. Spitzen im Datenverkehr führen nicht zu einer Überlastung der Systeme, sodass Ihre Website für die Kunden stets erreichbar bleibt.
Die Lösung generiert signierte, zeitlich begrenzte JSON-Web-Token (JWTs). Mit deren Hilfe können die APIs des nachgelagerten Systems vor der Verarbeitung von Anfragen überprüfen, ob die Benutzer den Warteraum erfolgreich durchlaufen haben.
Der OpenID-Adapter der Lösung bietet verschiedene OpenID Connect (OIDC)-kompatible APIs, die mit vorhandener Web-Hosting-Software eingesetzt werden können, die OIDC-Identitätsanbieter unterstützt.
Die Lösung bietet eine beispielhafte Warteraum-Website zur Veranschaulichung einer anpassbaren End-to-End-Minimallösung für einen Warteraum.
Technische Details
Sie können diese Architektur mit dem Implementierungsleitfaden und der dazugehörigen AWS-CloudFormation-Vorlage automatisch bereitstellen.
Schritt 1
Die AWS-CloudFormation-Vorlage stellt eine Amazon-CloudFront-Verteilung bereit, um öffentliche API-Aufrufe für den Client bereitzustellen.
Schritt 2
Öffentliche API-Ressourcen von Amazon API Gateway zum Verarbeiten von Warteschlangenanfragen aus dem virtuellen Warteraum, zum Verfolgen der Position in der Warteschlange und zum Validieren von Token, die den Zugriff auf die Ziel-Website ermöglichen.
Schritt 3
Eine Amazon Simple Queue Service (Amazon SQS)-Warteschlange zur Regulierung des Datenverkehrs an die AWS-Lambda-Funktion, die die Nachrichten in der Warteschlange verarbeitet. Anstatt die Lambda-Funktion bei jeder Anfrage aufzurufen, verarbeitet die Amazon-SQS-Warteschlange die eingehenden Anfragen stapelweise.
Schritt 4
API Gateway – private API-Ressourcen zur Unterstützung administrativer Funktionen.
Schritt 5
Lambda-Funktionen zum Überprüfen und Verarbeiten öffentlicher und privater API-Anfragen und zum Zurückgeben der entsprechenden Antworten.
Schritt 6
Amazon Virtual Private Cloud (Amazon VPC) zum Hosten der Lambda-Funktionen, die direkt mit dem Cluster von Amazon ElastiCache für Redis interagieren. VPC-Endpunkte ermöglichen Lambda-Funktionen in der VPC die Kommunikation mit Services in der Lösung.
Schritt 7
Eine Amazon-CloudWatch-Regel zum Aufrufen einer Lambda-Funktion, die mit einem benutzerdefinierten Amazon EventBridge-Bus zusammenarbeitet, um regelmäßig Statusaktualisierungen zu übertragen.
Schritt 8
Amazon DynamoDB-Tabellen, um Token-, Warteschlangenpositions- und Servierzählerdaten zu speichern.
Schritt 9
AWS Secrets Manager zum Speichern von Schlüsseln für Token-Vorgänge und andere sensible Daten.
Schritt 10 (Optional)
Autorisierer-Komponente, bestehend aus einer AWS Identity and Access Management (IAM)-Rolle und einer Lambda-Funktion zum Validieren von Signaturen für Ihre API-Aufrufe. Die einzige Voraussetzung für den Schutz der API durch den Autorisierer ist die Nutzung von API Gateway.
Schritt 11 (Optional)
Amazon Simple Notification Service (Amazon SNS), CloudWatch und Lambda-Funktionen zur Unterstützung von zwei Einlass-Strategien.
Schritt 12 (Optional)
OpenID-Adapterkomponente mit API Gateway und Lambda-Funktionen, damit ein OpenID-Anbieter Benutzer Ihrer Website authentifizieren kann. CloudFront-Verteilung mit einem Amazon Simple Storage Service (Amazon S3)-Bucket für die Wartezimmer-Seite für diese Komponente.
Schritt 13 (Optional)
Eine CloudFront-Verteilung mit S3-Ursprungs-Bucket für die optionale, beispielhafte Wartezimmer-Webanwendung.
- Datum der Veröffentlichung