Diese Anleitung unterstützt Entwickler beim Testen, Visualisieren und Optimieren ihrer Multiplayer-Spiele mit dem Test-Toolkit von Amazon GameLift. Mit dem Toolkit können Entwickler Fehler in ihrer Amazon-GameLift-Infrastruktur beheben, debuggen und optimieren. Diese Anleitung bietet optional die Möglichkeit, virtuelle Spieler zu verwenden, die denselben Code wie echte Spieler ausführen, sodass Entwickler den Erfolg ihres Spiels testen können, bevor sie es in die Produktion bringen.

Architekturdiagramm

Architektur-Diagramm als PDF herunterladen 

Well-Architected-Säulen

Das AWS-Well-Architected-Framework hilft Ihnen, die Vor- und Nachteile der Entscheidungen zu verstehen, die Sie beim Aufbau von Systemen in der Cloud treffen. Die sechs Säulen des Frameworks ermöglichen es Ihnen, architektonische bewärhte Methoden für die Entwicklung und den Betrieb zuverlässiger, sicherer, effizienter, kostengünstiger und nachhaltiger Systeme zu erlernen. Mit dem AWS-Well-Architected-Tool, das kostenlos in der AWS-Managementkonsole verfügbar ist, können Sie Ihre Workloads anhand dieser bewährten Methoden überprüfen, indem Sie eine Reihe von Fragen für jede Säule beantworten.

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.

    Whitepaper zur betrieblichen Exzellenz lesen 
  • Die Serverless-Webkonsolen-API in API Gateway ist mit einer auf AWS Identity and Access Management (IAM) basierenden Authentifizierung gegen einen Benutzerpool von Amazon 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-Funktionen von Lambda haben nur Zugriff auf die von ihnen benötigten Services.

    Whitepaper zur Sicherheit lesen 
  • 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.

    Whitepaper zur Zuverlässigkeit lesen 
  • 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.

    Whitepaper zur Leistung und Effizienz lesen 
  • 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.

    Whitepaper zur Kostenoptimierung lesen 
  • Die 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 die 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.

    Whitepaper zur Nachhaltigkeit lesen 

Ressourcen zur Implementierung

Der Beispielcode dient als Ausgangspunkt. Er ist in der Branche erprobt, präskriptiv, aber nicht endgültig, und ein Blick unter die Haube, der Ihnen den Einstieg erleichtert. 

AWS-Architektur
Blog

Titel

Untertitel
Text.
 
Dieser Beitrag zeigt, wie ...
Vollständigen Blog-Artikel lesen 
AWS-Architektur
Blog

Titel

Untertitel
Text.
 
Dieser Beitrag zeigt, wie ...
Vollständigen Blog-Artikel lesen 

Haftungsausschluss

Der Beispielcode, die Softwarebibliotheken, die Befehlszeilentools, die Machbarkeitsnachweise, die Vorlagen oder andere zugehörige Technologien (einschließlich derjenigen, die von unseren Mitarbeitern bereitgestellt werden) werden Ihnen als AWS-Inhalte im Rahmen der AWS-Kundenvereinbarung oder der entsprechenden schriftlichen Vereinbarung zwischen Ihnen und AWS (je nachdem, was zutrifft) zur Verfügung gestellt. Sie sollten diese AWS-Inhalte nicht in Ihren Produktionskonten oder für Produktions- oder andere kritische Daten verwenden. Sie sind verantwortlich für das Testen, Sichern und Optimieren des AWS-Inhalts, z. B. des Beispielcodes, für die Verwendung in der Produktion auf der Grundlage Ihrer spezifischen Qualitätskontrollverfahren und -standards. Bei der Bereitstellung von AWS-Inhalten können AWS-Gebühren für die Erstellung oder Nutzung von kostenpflichtigen AWS-Ressourcen anfallen, z. B. für den Betrieb von Amazon-EC2-Instances oder die Nutzung von Amazon-S3-Speicher.