Tutorial: Erstellen Sie eine GameLift Amazon-Warteschlange mit Spot-Instances - Amazon GameLift

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.

Tutorial: Erstellen Sie eine GameLift Amazon-Warteschlange mit Spot-Instances

Einführung

In diesem Tutorial wird beschrieben, wie Sie die Platzierung von Spielsitzungen für Spiele einrichten, die auf kostengünstigen Spot-Flotten eingesetzt werden. Spot-Flotten erfordern zusätzliche Schritte, um die kontinuierliche Verfügbarkeit der Spieleserver für Ihre Spieler aufrechtzuerhalten.

Zielgruppe

Dieses Tutorial richtet sich an Spieleentwickler, die Spot-Flotten verwenden möchten, um benutzerdefinierte Spieleserver oder Echtzeitserver zu hosten.

Was du lernen wirst
  • Definiere die Gruppe von Spielern, denen deine Warteschlange für Spielsitzungen dient.

  • Baue eine Flotteninfrastruktur auf, die den Umfang der Warteschlange für Spielsitzungen unterstützt.

  • Weisen Sie jeder Flotte einen Alias zu, um die Flotten-ID zu ermitteln.

  • Erstellen Sie eine Warteschlange, fügen Sie Flotten hinzu und priorisieren Sie, wo Amazon GameLift Spielsitzungen platziert.

  • Fügen Sie Latenzrichtlinien für Spieler hinzu, um Latenzprobleme zu minimieren.

Voraussetzungen

Bevor du Flotten und Warteschlangen für die Platzierung von Spielsitzungen erstellst, führe die folgenden Aufgaben durch:

Schritt 1: Definieren Sie den Umfang Ihrer Warteschlange

In diesem Tutorial entwerfen wir eine Warteschlange für ein Spiel, das eine Spielserver-Build-Variante hat. Zum Start veröffentlichen wir das Spiel an zwei Orten: im asiatisch-pazifischen Raum (Seoul) und im asiatisch-pazifischen Raum (Singapur). Da diese Standorte nahe beieinander liegen, ist Latenz für unsere Spieler kein Problem.

In diesem Beispiel gibt es ein Spielersegment, was bedeutet, dass wir eine Warteschlange erstellen. In future, wenn wir das Spiel in Nordamerika veröffentlichen, können wir eine zweite Warteschlange einrichten, die nur nordamerikanischen Spielern zur Verfügung steht.

Weitere Informationen finden Sie unter Definieren Sie den Umfang einer Warteschlange.

Schritt 2: Erstellen Sie die Spot-Flotteninfrastruktur

Erstellen Sie Flotten an Standorten und mit Spielserver-Builds oder Skripten, die dem von Ihnen definierten Umfang entsprechen. Schritt 1: Definieren Sie den Umfang Ihrer Warteschlange

In diesem Tutorial erstellen wir eine Infrastruktur mit zwei Standorten mit mindestens einer Spot-Flotte und einer On-Demand-Flotte an jedem Standort. Jede Flotte verwendet den gleichen Spielserver-Build. Darüber hinaus gehen wir davon aus, dass der Spielerverkehr am Standort Seoul stärker sein wird, weshalb wir dort mehr Spot-Flotten hinzufügen.

Das folgende Diagramm zeigt das Beispiel einer Spot-Flotteninfrastruktur mit 3 Flotten am Standort ap-northeast-2 (Seoul) und 2 Flotten am Standort ap-southeast-1 (Singapur). Alle Instanzen in beiden Flotten verwenden den Build _prod_V1. MBG Die Flotte in ap-northeast-2 enthält die folgenden Flottenkonfigurationen: fleet 1234_spot_1 mit dem Instance-Typ c5.large, fleet 1234_spot_2 mit dem Instance-Typ c5.xlarge und fleet 1234_ondemand mit dem Instance-Typ c5.large. Die Flotte in ap-southeast-1 enthält die folgenden Flottenkonfigurationen: fleet 1234_spot_1 mit dem Instance-Typ c5.large und fleet 1234_ondemand mit dem Instance-Typ c5.large.

Eine Spot-Flotteninfrastruktur mit Standorten im asiatisch-pazifischen Raum (Seoul) und im asiatisch-pazifischen Raum (Singapur) mit einer Mischung aus On-Demand- und Spot-Instances.

Schritt 3: Weisen Sie jeder Flotte Aliase zu

Erstellen Sie für jede Flotte in Ihrer Infrastruktur einen neuen Alias. Aliase abstrakten Flottenidentitäten, sodass der regelmäßige Austausch von Flotten effizient ist. Weitere Informationen zum Erstellen von Aliasnamen finden Sie unter. Erstellen Sie einen GameLift Amazon-Alias

Unsere Flotteninfrastruktur besteht aus fünf Flotten, daher erstellen wir mithilfe der Routing-Strategie fünf Aliase. Wir benötigen drei Aliase für den Standort Asien-Pazifik (Seoul) und zwei Aliase für den Standort Asien-Pazifik (Singapur).

Das folgende Diagramm zeigt die in Schritt 2 beschriebene Spot-Flotteninfrastruktur mit Aliasnamen, die jeder Flotte hinzugefügt wurden. Fleet 1234_spot_1 hat den Alias _spot_1, Fleet MBG 1234_spot_2 hat den Alias _spot_2 und fleet 1234_ondemand hat den Alias _ondemand. MBG MBG

Das in Schritt 2 beschriebene Beispiel für eine Spot-Flotteninfrastruktur mit Aliasnamen, die auf jede Flotte verweisen.

Weitere Informationen finden Sie unter Erstellen Sie eine Warteschlange mit mehreren Standorten.

Schritt 4: Erstellen Sie eine Warteschlange mit Zielen

Erstelle die Warteschlange für Spielsitzungen und füge deine Flottenziele hinzu. Weitere Informationen zum Erstellen einer Warteschlange finden Sie unterErstellen Sie eine Warteschlange für Spielsitzungen.

Gehen Sie beim Erstellen Ihrer Warteschlange wie folgt vor:

  • Stellen Sie das Standard-Timeout auf 10 Minuten ein. Später kannst du testen, wie sich das Warteschlangen-Timeout auf die Wartezeiten deiner Spieler auswirkt, wenn sie ins Spiel kommen.

  • Überspringen Sie vorerst den Abschnitt über die Latenzrichtlinien für Spieler. Wir werden uns im nächsten Schritt damit befassen.

  • Priorisieren Sie die Flotten in Ihrer Warteschlange. Bei der Arbeit mit Spot-Flotten empfehlen wir einen der folgenden Ansätze:

    • Wenn Ihre Infrastruktur einen primären Standort mit Flotten an einem zweiten Standort als Backup verwendet, priorisieren Sie die Flotten zuerst nach Standort und dann nach Flottenart.

    • Wenn Ihre Infrastruktur mehrere Standorte gleichermaßen nutzt, priorisieren Sie Flotten nach Flottenart und platzieren Sie Spot-Flotten ganz oben in der Warteschlange.

Für dieses Tutorial erstellen wir eine neue Warteschlange mit dem Namen MBG_spot_queue und fügen die Aliase aller fünf unserer Flotten hinzu. Anschließend priorisieren wir Platzierungen zunächst nach Standort und dann nach Flottenart.

Basierend auf dieser Konfiguration versucht diese Warteschlange immer, neue Spielsitzungen einer Spot-Flotte in Seoul hinzuzufügen. Wenn diese Flotten voll sind, verwendet die Warteschlange die verfügbare Kapazität der Seoul On-Demand-Flotte als Backup. Wenn alle drei Flotten in Seoul nicht verfügbar sind, veranstaltet Amazon GameLift Spielsitzungen auf den Flotten in Singapur.

Das folgende Diagramm zeigt eine Warteschlange mit einem Timeout von 300 Sekunden und priorisierten Zielen. Die Ziele sind in der folgenden Reihenfolge angeordnet: 1234_spot_1 in ap-northeast-2, 1234_spot_2 in ap-northeast-2, 1234_ondemand in ap-northeast-2, 1234_spot_1 in ap-southeast-1 und 1234_ondemand in ap-southeast-1.

Ein Beispiel für eine Spot-Warteschlange mit mehreren Spot-Flotten und On-Demand-Backup-Flotten.

Schritt 5: Fügen Sie der Warteschlange Latenzgrenzen hinzu

Unser Spiel enthält Latenzinformationen in Anfragen zur Platzierung von Spielsitzungen. Wir haben auch eine Spielerparty-Funktion, mit der eine Spielsitzung für eine Gruppe von Spielern erstellt wird. Wir können die Spieler etwas länger warten lassen, bis sie in Spiele mit dem idealen Spielerlebnis einsteigen. Unsere Spieltests zeigen die folgenden Beobachtungen:

  • Eine Latenz unter 50 Millisekunden ist ideal.

  • Das Spiel ist bei Latenzen über 250 Millisekunden nicht spielbar.

  • Die Spieler werden nach etwa einer Minute ungeduldig.

Für unsere Warteschlange mit einem Timeout von 300 Sekunden fügen wir Richtlinienerklärungen hinzu, die die zulässige Latenz einschränken. Die Richtlinienerklärungen ermöglichen schrittweise höhere Latenzwerte bis zu einer Latenz von bis zu 250 Millisekunden.

Mit dieser Richtlinie sucht unsere Warteschlange in der ersten Minute nach Platzierungen mit idealer Latenz (unter 50 Millisekunden) und lockert dann das Limit. In der Warteschlange werden keine Platzierungen vorgenommen, bei denen die Latenz der Spieler 250 Millisekunden oder höher beträgt.

Das folgende Diagramm zeigt die Warteschlange aus Schritt 4 mit den hinzugefügten Latenzrichtlinien für Spieler. In den Latenzrichtlinien für Spieler heißt es, ein Limit von 50 ms für 60 Sekunden, ein Limit von 125 ms für 30 Sekunden und ein Limit von 250 ms bis zum Timeout durchzusetzen.

Die Beispielwarteschlange aus Schritt 4 mit hinzugefügten Latenzrichtlinien für Spieler. In den Latenzrichtlinien für Spieler heißt es: Erzwingen Sie ein Limit von 50 ms für 60 Sekunden, ein Limit von 125 ms für 30 Sekunden und ein Limit von 250 ms bis zum Timeout.

Übersicht

Herzlichen Glückwunsch! Hier sind die Dinge, die Sie erreicht haben:

  • Sie haben eine Warteschlange für Spielsitzungen, die auf einen Teil Ihrer Spielerpopulation beschränkt ist.

  • Ihre Warteschlange nutzt Spot-Flotten effektiv und ist widerstandsfähig, wenn Spot-Unterbrechungen auftreten.

  • Ihre Warteschlange priorisiert die Flotten, um das beste Spielerlebnis zu erzielen.

  • Die Warteschlange hat Latenzgrenzen, um Spieler vor schlechten Spielerlebnissen zu schützen.

Du kannst die Warteschlange jetzt verwenden, um Spielsitzungen für die Spieler zu platzieren, denen sie dient. Wenn Sie Anfragen zur Platzierung von Spielsitzungen für diese Spieler stellen, geben Sie in der Anfrage den Namen der Warteschlange für die Spielsitzung an. Weitere Informationen dazu, wie Sie Anfragen zur Platzierung von Spielsitzungen stellenSpielsitzungen erstellen, finden Sie unter oderIntegration eines Game-Clients für Realtime Server.

Nächste Schritte: