View a markdown version of this page

GAMECOST02-BP02 Optimisez le nombre de sessions de jeu hébergées sur chaque instance de serveur de jeu afin d'optimiser les coûts - Lens de l'industrie du jeu

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.

GAMECOST02-BP02 Optimisez le nombre de sessions de jeu hébergées sur chaque instance de serveur de jeu afin d'optimiser les coûts

Optimisez le nombre de sessions de jeu hébergées par instance de serveur pour améliorer l'utilisation du calcul et réduire les coûts d'infrastructure informatique. 

Niveau d’exposition au risque si cette bonne pratique n’est pas respectée : moyen

Directives d’implémentation

Pour optimiser les coûts, les développeurs de jeux doivent optimiser le nombre de sessions de jeu hébergées sur le même serveur physique ou virtuel, également connu sous le nom de densité de remplissage de leurs serveurs de jeu. Ceci est réalisé en augmentant le nombre de processus de serveur de jeu pouvant être hébergés simultanément sur une instance.

Un processus de serveur de jeu unique ne devrait généralement pas nécessiter l'utilisation de toutes les ressources disponibles sur l'instance EC2. Il s'agit de l'un des moyens les plus importants de réduire les coûts de calcul d'un jeu et nécessite l'utilisation de logiciels capables de générer et de gérer plusieurs processus de serveur sur l'instance EC2 sur des ports distincts.

Par exemple, Amazon GameLift impose un quota sur le nombre maximum de processus de serveur de jeu par instance, que vous devez vous efforcer d'utiliser afin de réduire les coûts d'hébergement. Pour plus d'informations, consultez la section Points de terminaison et quotas Amazon GameLift Servers pour plus de détails sur le quota actuel pour le nombre maximum de processus de serveur de jeu par instance.

Au lieu de déployer des processus de serveur de jeu sur des machines virtuelles telles que des instances EC2, il est de plus en plus courant pour les développeurs de jeux d'exécuter leurs serveurs de jeu sous la forme d'applications basées sur des conteneurs à l'aide de solutions d'orchestration de conteneurs. Les développeurs de jeux peuvent utiliser Amazon Elastic Container Service (Amazon ECS) ou Guidance for Game Server Hosting Using Agones et Open Match sur Amazon EKS. Une autre option est Game Server Hosting on AWS Fargate, un moteur de calcul sans serveur qui fonctionne à la fois avec ECS et EKS, vous permettant de vous concentrer sur votre jeu sans avoir à gérer l'infrastructure sous-jacente.

Les solutions de conteneurs fournissent une fonctionnalité de planification des tâches qui permet de trouver automatiquement une instance de conteneur disponible dans le cluster pour héberger le conteneur de votre serveur de jeu en fonction des besoins en ressources et d'autres logiques de placement que vous spécifiez. Cependant, il est important de réfléchir à la manière dont vous allez gérer la mise à l'échelle et le comportement de placement des joueurs de manière à ne pas perturber les sessions actives des joueurs.

Étapes d’implémentation

  • Augmentez la densité de stockage en exécutant plusieurs processus de serveur de jeu par instance EC2 à l'aide de ports et de logiciels de gestion de processus distincts.

  • Utilisez Amazon GameLift ou des solutions de conteneurs comme ECS, EKS, ou AWS Fargate pour gérer efficacement les processus des serveurs de jeux et réduire les coûts d'infrastructure.

  • Surveillez en permanence l'utilisation des ressources pour affiner la densité de remplissage et maintenir la rentabilité sans compromettre l'expérience des joueurs.