Optimisation de la configuration d'exécution du serveur de jeu en mode géré Amazon GameLift Servers - Amazon GameLift Servers

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Optimisation de la configuration d'exécution du serveur de jeu en mode géré Amazon GameLift Servers

Vous pouvez configurer la configuration d'exécution d'une EC2 flotte gérée pour exécuter plusieurs processus de serveur de jeu par instance. Cela permet d'utiliser vos ressources d'hébergement de manière plus efficace.

Comment une flotte gère plusieurs processus

Amazon GameLift Serversutilise la configuration d'exécution d'un parc pour déterminer le type et le nombre de processus à exécuter sur chaque instance. Une configuration d'exécution contient au moins une configuration de processus serveur qui représente un exécutable de serveur de jeu. Vous pouvez définir des configurations de processus de serveur supplémentaires pour exécuter d'autres types de processus liés à votre jeu. Chaque configuration de processus serveur contient les informations suivantes :

  • Nom de fichier et chemin d'accès d'un exécutable dans votre build de jeu.

  • (Facultatif) Paramètres à transmettre au processus serveur au lancement.

  • Le nombre de processus à exécuter simultanément.

Lorsqu'une instance du parc est activée, elle lance l'ensemble des processus serveur définis dans la configuration d'exécution. Dans le cas de plusieurs processusAmazon GameLift Servers, le lancement de chaque processus est échelonné. Les processus du serveur ont une durée de vie limitée. À la fin, Amazon GameLift Servers lance de nouveaux processus pour maintenir le nombre et le type de processus serveur définis dans la configuration d'exécution.

Vous pouvez modifier la configuration d'exécution d'une flotte à tout moment en ajoutant, en modifiant ou en supprimant des configurations de processus serveur. Chaque instance vérifie régulièrement les mises à jour de la configuration d'exécution du parc afin de mettre en œuvre les modifications. Voici comment Amazon GameLift Servers adopter les modifications de configuration d'exécution :

  1. L'instance envoie une demande Amazon GameLift Servers pour obtenir la dernière version de la configuration d'exécution.

  2. L'instance compare ses processus actifs à la dernière configuration d'exécution, puis effectue les opérations suivantes :

    • Si la configuration d'exécution mise à jour supprime un type de processus serveur, les processus serveur actifs de ce type continuent de s'exécuter jusqu'à leur fin. L'instance ne remplace pas ces processus de serveur.

    • Si la configuration d'exécution mise à jour réduit le nombre de processus simultanés pour un type de processus serveur, les processus serveur excédentaires de ce type continuent de s'exécuter jusqu'à leur fin. L'instance ne remplace pas ces processus serveur excédentaires.

    • Si la configuration d'exécution mise à jour ajoute un nouveau type de processus serveur ou augmente le nombre de processus simultanés pour un type existant, l'instance lance de nouveaux processus serveur, jusqu'au Amazon GameLift Servers maximum. Dans ce cas, l'instance lance de nouveaux processus serveur lorsque les processus existants prennent fin.

Optimisation d'une flotte pour de multiples processus

Pour utiliser plusieurs processus sur une flotte, procédez comme suit :

  • Créez une version contenant les exécutables du serveur de jeu que vous souhaitez déployer dans une flotte, puis téléchargez-la dans. Amazon GameLift Servers Tous les serveurs de jeu d'une version doivent fonctionner sur la même plateforme et utiliser le SDK du serveur pourAmazon GameLift Servers.

  • Créez une configuration d'exécution avec une ou plusieurs configurations de processus serveur et plusieurs processus simultanés.

  • Intégrez les clients de jeu avec le AWS SDK version 2016-08-04 ou ultérieure.

Pour optimiser les performances de votre flotte, nous vous recommandons de procéder comme suit :

  • Gérez les scénarios d'arrêt des processus du serveur Amazon GameLift Servers afin de recycler efficacement les processus. Par exemple :

    • Ajoutez une procédure d'arrêt au code de votre serveur de jeu qui appelle l'API du serveurProcessEnding().

    • Implémentez la fonction de rappel OnProcessTerminate() dans le code de votre serveur de jeu pour gérer les demandes de résiliation provenant deAmazon GameLift Servers.

  • Assurez-vous que cela Amazon GameLift Servers arrête et relance les processus du serveur défaillants. Signalez l'état de santé à en Amazon GameLift Servers implémentant la fonction de OnHealthCheck() rappel dans le code de votre serveur de jeu. Amazon GameLift Serversarrête automatiquement les processus du serveur signalés comme défaillants pendant trois rapports consécutifs. Si vous ne l'implémentez pasOnHealthCheck(), cela Amazon GameLift Servers suppose qu'un processus serveur est sain, sauf si le processus ne répond pas à une communication.

Choisissez le nombre de processus par instance

Lorsque vous déterminez le nombre de processus simultanés à exécuter sur une instance, gardez à l'esprit les points suivants :

  • Amazon GameLift Servers limite chaque instance à un nombre maximal de processus simultanés. La somme de tous les processus simultanés pour les configurations de processus de serveur d'un parc ne peut pas dépasser ce quota.

  • Pour maintenir des niveaux de performance acceptables, le type d' EC2 instance Amazon peut limiter le nombre de processus pouvant être exécutés simultanément. Testez différentes configurations pour votre jeu afin de trouver le nombre de processus correspondant à votre type d'instance préféré.

  • Amazon GameLift Serversn'exécute pas plus de processus simultanés que le nombre total de processus configurés. Cela signifie que la transition de la configuration d'exécution précédente à la nouvelle configuration peut se faire progressivement.