Skalieren des Standbymodus

Die Skalierungsfunktionen von PlayFab ermöglichen es Entwicklern, die Hostingkapazität von Spieleservern an die tatsächliche Spielernachfrage anzupassen. Diese Steuerelemente helfen Entwicklern, die Hostingkosten für Spieleserver effizient niedrig zu halten und gleichzeitig genügend Kapazität zu erhalten, um schnell neue Spieler hinzuzufügen, um multiplayer-Spiele mit minimalen bis gar keinen Wartezeiten beizutreten.

Die Skalierung von Spielservern ist etwas, über das Entwickler nachdenken, nachdem ihr Spiel erfolgreich bereitgestellt und ausgeführt wurde. Die in diesem Abschnitt gezeigten Steuerelemente helfen Entwicklern, die Elastizität der Ressourcenskalierung zu definieren und gleichzeitig genügend Kapazität beizubehalten, um neue Spieler hinzuzufügen, ohne dass sie warten müssen.

Server im Status "Propping" und "Standing-By" werden ihrem Titel in Rechnung gestellt, und Sie sollten diese Prozesse optimieren, um Kosten zu senken. Bevor wir uns damit vertraut machen, wie Sie das Standing by Target berechnen können, finden Sie hier einige hilfreiche Begriffe, die Sie verstehen sollten.

Terminologie

Begriffe, die Sie beim Skalieren von Standbyservern verstehen sollten.

  • Ziel-Standby : Dies ist ein von der Plattform festgelegter Wert, der die Zielanzahl der Standbyserver angibt, die verfügbar sein sollen, um das Aushungern des Standbypools zu vermeiden.
  • Ziel-Standby-Boden – Ein konfigurierbares Measure für Spieleentwickler, das die Mindestanzahl von Servern darstellt, die im Leerlauf gehalten werden, um die Nachfrage nach neuen Spielservern zu erfüllen.
  • Tatsächlicher Standbymodus : Die Von der Multiplayerserver-Plattform gemeldete Anzahl von Standbyservern, bei denen die Werte zwischen aktiviertem dynamischem Standby und deaktiviertem dynamischem Standby unterscheiden.
  • Voraberstellung : Azure und PlayFab müssen den virtuellen Computer erstellen, sein Betriebssystem initialisieren und seine Umgebung konfigurieren. PlayFab steuert diese Vorab-Propping-Aktivität, bevor der virtuelle Computer einem Kunden zugewiesen und in Rechnung gestellt wird.
  • Propping : Die Ressourcen der Spielserver müssen geladen werden, und die Spieleserveranwendung selbst benötigt oft etwas Zeit, um sich auf Die Spieler vorzubereiten.
  • Im Vorbeistehen Um die Nachfrage nach einem Multiplayer-Server sofort zu erfüllen, werden einige Server ständig für Spieler im Leerlauf bereitgehalten.

Konfigurieren des Ziel-Standbymodus

Sie konfigurieren ständige Ziele pro Build und pro Region. In der Regel sollten Sie den Stand-by-Level proportional zur Proppingzeit und zielbasierten Zuordnungsrate festlegen: Standing by Target = (Propping Time + Server time to standing by) * Target Allocation Rate

Beispiel: Ein Linux-Server, für den 100 Sekunden benötigt werden, und ein Spiel, für das alle 5 Sekunden bis zu einem Server zugeordnet sein soll (0,2 Server/Sekunde). Ein Pool mit 100 * 0,2 = 20 Servern unterstützt diesen Build stabil. Nach 100 Sekunden werden 20 Server verbraucht, aber es wird Zeit gewesen sein, weitere 20 zu erstellen.

Beim Aufrufen der RequestMultiplayerServer API ist es wichtig, alle Regionen anzugeben, die für die Spielererfahrung akzeptabel sind. Wenn für Region 1 kein "Standing By"-Server verfügbar ist, wird Region 2 angefordert und für so viele Regionen fortgesetzt, wie Sie konfiguriert haben.

Skalierungsvorteile

Eine Zusammenfassung der Skalierungsvorteile umfasst Folgendes:

Profitieren Beschreibung
Erhöhen der Anwendungsverfügbarkeit Stellt durch proaktive Bereitstellung von Kapazität sicher, dass Ihr Spieleserverpool immer über die richtige Anzahl von VMs verfügt.
Geringere Computekosten Fügt Instanzen nur hinzu, wenn dies zur Kostenoptimierung erforderlich ist.
Skalieren von Instanzen über Kaufoptionen hinweg Skalierungsoptionen optimieren die Leistung für instance Buildkonfigurationen instance Typ, Region, Größe und Spielserver

Skalierungsmethoden

PlayFab bietet mehrere Mechanismen zum Skalieren, wann und wie Ihre Server skaliert werden. Spieleentwickler haben folgende Flexibilität:

  1. Konfigurieren von minimalen & maximalen Schwellenwerten
  2. Anpassen von Skalierungskonfigurationen pro Serverbuildprofil, z. B. (a) instance-Typen, (b) VM-Größe oder (c) Regionen
  3. Müheloses Verwalten von Änderungen über das Entwicklerportal oder über die RESTful-API für Multiplayerserver
  4. Überwachen von Skalierungsmetriken in Server-&-Nutzungsdiagrammen

Die drei Methoden zum Konfigurieren der Skalierung von Spielservern sind:

  • Standard
  • Geplant
  • Dynamisch

Jede hat einen einzigartigen Ansatz, löst jedoch aus einem bekannten oder unbekannten Zustand der Spielernachfrage aus. Die Standardmethode wird auf die maximale Anzahl konfigurierter Server hochskaliert und bei abgeschlossenen Sitzungen herunterskaliert. In diesem Mechanismus sind vom Entwickler keine zusätzlichen Schritte erforderlich. Dies ist die einfachste Methode, bei der Entwickler ein maximales Server- und Standby-Limit festlegen, sodass PlayFab automatisch verkleinern und VMs aufgrund der Spielernachfrage vergrößert.

Steuerung Spielerbedarf Ansatz Anwendungsfall Ertrag
Standard Unvorhersehbaren Automatisch Normaler Spielbetrieb Wird nicht schnell genug für Datenverkehrsspitzen skaliert
Geplant Vorhersehbar Geplant Geplanter Start des Ereignisses Nachverfolgen von Zeitplanänderungen für Schichten der Spielernachfrage
Dynamisch Unvorhersehbaren Formeln Plötzliche Datenverkehrsspitze

Um die Breite der Skalierungsoptionen vollständig nutzen zu können, müssen zunächst die folgenden schlüsselbegriffen und terminologie verstanden werden.

Wichtige Konzepte

  • Skalierungsmechanismen steuern die Anzahl der Verfügbarkeit des Standbyservers
  • Standbyserver sind VM-zugeordnete Server ohne aktive verbundene Player. Diese gehen bei der Annahme von Spielerverbindungen als Reaktion auf requestMultiplayerServer-API-Aufruf über; sie wechseln in einen Beendigungszustand, wenn der Spielserverprozess beendet wird
  • Skalierungsmechanismen werden in jeder Region eines Builds eindeutig angewendet.
  • Jede Skalierungskonfiguration wird als Regionsüberschreibung dargestellt.

Standbypool starvation

Die Multiplayer-Server von PlayFab bieten eine Bank von Standbyservern. Dies hilft, die sofortige Erfüllung von Anforderungen für mehr Spieleserver als Reaktion auf die Nachfrage der Spieler zu unterstützen. Wenn die Nachfrage nach zusätzlichen Servern schneller wächst als die Zeit, die zum Erwerben und Bereitstellen von Servern aus den Reserven erforderlich ist, wird der Pool der Standbyserver erschöpft. Der Pool der verfügbaren Server wechselt in den Zustand "Hunger", und Anforderungen für Spielserver schlagen fehl, bis weitere Server bereitgestellt werden können. Die Zeitplan-Standby- und dynamische Standby-Skalierungsmethoden aktivieren automatisch eine erhöhte Bereitstellung von Spielservern, um die Nachfrage der Spieler zu erfüllen.