Anleitung für GameLift-Tests in AWS
Übersicht
Funktionsweise
Diese technischen Details enthalten ein Architekturdiagramm, das veranschaulicht, wie diese Lösung effektiv eingesetzt werden kann. Das Architekturdiagramm veranschaulicht die Hauptkomponenten und deren Interaktionen und bietet einen schrittweisen Überblick über die Struktur und Funktionalität der Architektur.
Well-Architected-Säulen
Das obige Architekturdiagramm ist ein Beispiel für eine Lösung, die unter Berücksichtigung der bewährten Methoden von Well-Architected erstellt wurde. Um eine vollständige Well-Architected-Lösung zu erhalten, sollten Sie so viele bewährte Methoden von Well-Architected wie möglich befolgen.
Sowohl das Toolkit als auch das Beispielspiel werden vollständig mit Infrastruktur als Code bereitgestellt. Dadurch werden durch manuelle Prozesse verursachte Fehler reduziert und der Aufwand für das Bereitstellen von Änderungen verringert.
Die Serverless-Webkonsolen-API in API Gateway ist mit einer auf AWS Identity and Access Management (IAM) basierenden Authentifizierung gegen einen Benutzerpool von Cognito geschützt.
Das Serverless-Beispielspiel-Backend in API Gateway ist mit einer IAM-basierten Authentifizierung zur sicheren Validierung der Gastidentität des Spielers geschützt.
Spieleserver in GameLift ermöglichen nur den Zugriff auf die Ports, die für die Client-Server-Kommunikation verwendet werden. Die Backend-Lambda-Funktionen haben nur Zugriff auf die von ihnen benötigten Services.
Die Daten werden in DynamoDB-Tabellen gespeichert und nutzen die bedarfsgesteuerte Kapazitätszuweisung, um eine automatische Skalierung basierend auf Nachfrageänderungen vorzunehmen.
Die Backend-Services der Lösung nutzen Lambda, das Instances automatisch skaliert.
Das Beispiel-Spiel-Backend unterstützt die zielbasierte automatische Skalierung von GameLift, um Änderungen in der Nachfrage zu bewältigen.
Durch den Einsatz verwalteter, Serverless-Technologien wie API Gateway, Lambda, DynamoDB und Fargate zahlen Sie nur für die Ressourcen, die Sie nutzen, und reduzieren den Betriebsaufwand für die Wartung der Lösung.
Die Lösung kann in einer Region Ihrer Wahl bereitgestellt werden. Es nutzt CloudFront, um die Latenz für den Endbenutzer der Webkonsole zu reduzieren.
Aufgaben für virtuelle Spieler können mit Fargate Spot gestartet werden, um die Testkosten zu senken.
Die Webkonsole und die Beispielspiel-Backends nutzen Serverless Technologien, sodass Sie nur für die Ressourcen bezahlen, die Sie nutzen.
Das Webkonsolen-Backend nutzt die nativen Skalierungs-Feature von Lambda und API Gateway, wobei DynamoDB-Tabellen eine Kapazitätszuweisung On-Demand verwenden, um sicherzustellen, dass die Ressourcen dem Bedarf entsprechen.
Das Beispielspiel-Backend unterstützt die zielbasierte automatische Skalierung von GameLift, um die erforderlichen Ressourcen zu minimieren.
Diese Anleitung nutzt in großem Umfang verwaltete Services. Dadurch wird die Verantwortung für die Aufrechterhaltung einer hohen durchschnittlichen Auslastung auf AWS verlagert.
Das Beispielspiel-Backend unterstützt die zielbasierte automatische Skalierung von GameLift, um die erforderlichen Ressourcen zu minimieren. Indem Spielsitzungen auf die Mindestanzahl von Server-Instances gebündelt werden, wird die Ressourcenauslastung konstant hoch gehalten.
Durch die weitreichende Nutzung von verwalteten Services reduziert diese Anleitung Ihre individuellen Auswirkungen auf die Umwelt.
Sie können die Nachhaltigkeitsauswirkungen ungenutzter Ressourcen weiter reduzieren, indem Sie Spielserver in Spot-Flotten und virtuelle Spieleraufgaben in Fargate Spot starten.
Mit Zuversicht bereitstellen
Bereit zum Bereitstellen? Sehen Sie sich den Beispielcode in GitHub an, um detaillierte Bereitstellungsanweisungen zu erhalten, mit denen Sie den Code unverändert bereitstellen oder an Ihre Anforderungen anpassen können.