Passer au contenu principal

Bibliothèque de solutions AWS

Guide pour les tests de GameLift sur AWS

Présentation

Ce guide aide les développeurs à tester, visualiser et optimiser leurs jeux multijoueurs à l’aide de la gamme de tests Amazon GameLift. Grâce à celle-ci, les développeurs peuvent dépanner, déboguer et régler leur infrastructure Amazon GameLift. Le présent guide propose une fonctionnalité optionnelle permettant d’utiliser des joueurs virtuels qui exécutent le même code que les joueurs réels. Les développeurs peuvent ainsi tester l’efficacité de leur jeu avant son lancement en production.

Fonctionnement

Ces détails techniques comportent un schéma d’architecture pour illustrer comment utiliser efficacement cette solution. Le schéma d’architecture montre les composants clés et leurs interactions, fournissant une vue d’ensemble de la structure et des fonctionnalités de l’architecture étape par étape.

Piliers Well-Architected

Le diagramme d'architecture ci-dessus est un exemple de solution créée en tenant compte des bonnes pratiques Well-Architected. Pour être totalement conforme à Well-Architected, vous devez suivre autant de bonnes pratiques Well-Architected que possible.

    La boîte à outils et l’exemple de jeu sont tous deux entièrement déployés grâce à l’infrastructure en tant que code. Ainsi, les erreurs causées par les processus manuels et l’effort nécessaire pour déployer des modifications sont réduits.

    Lire le livre blanc sur l’excellence opérationnelle

    L’API de console Web sans serveur d’API Gateway est protégée par une authentification basée sur AWS Identity and Access Management (IAM) contre un groupe d’utilisateurs Cognito.  

    L’exemple de backend de jeu sans serveur d’API Gateway est protégé par une authentification basée sur IAM pour une validation sécurisée de l’identité d’invité du joueur.

    Les serveurs de jeu de GameLift autorisent uniquement l’accès aux ports utilisés pour la communication client-serveur. Les fonctions Lambda du backend n’ont accès qu’aux services dont elles ont besoin.

    Lire le livre blanc sur la sécurité

    Les données sont stockées dans des tables DynamoDB, utilisant l’allocation de capacité à la demande pour se mettre à l’échelle automatiquement en fonction de l’évolution de la demande.  

    Les services backend de la solution utilisent Lambda, qui met automatiquement les instances à l’échelle.  

    L’exemple de backend de jeu prend en charge la mise à l’échelle automatique GameLift basée sur la cible pour gérer l’évolution de la demande.

    Lire le livre blanc sur la fiabilité

    En tirant parti de technologies gérées et sans serveur comme API Gateway, Lambda, DynamoDB et Fargate, vous ne payez que pour les ressources que vous utilisez et réduisez ainsi les efforts opérationnels nécessaires à la maintenance de votre solution.  

    La solution peut être déployée dans la région de votre choix et utilise CloudFront pour réduire la latence pour l’utilisateur final de la console Web.

    Lire le livre blanc sur l’efficacité des performances

    Les tâches de joueur virtuel peuvent être lancées avec Fargate Spot pour réduire le coût des tests.

    La console Web et les exemples de backends de jeux utilisent des technologies sans serveur afin que vous ne payiez que pour les ressources que vous utilisez.  

    Le backend de la console Web utilise les fonctionnalités de mise à l’échelle natives de Lambda et d’API Gateway, les tables DynamoDB utilisant l’allocation de capacité à la demande pour garantir que les ressources correspondent à la demande.

    L’exemple de backend de jeu prend en charge la mise à l’échelle automatique GameLift basée sur la cible afin de limiter les ressources nécessaires.

    Lire le livre blanc sur l’optimisation des coûts

    Le présent guide fait largement appel à des services gérés, ce qui confère à AWS la responsabilité de maintenir un taux d’utilisation moyen élevé.

    L’exemple de backend de jeu prend en charge la mise à l’échelle automatique GameLift basée sur la cible afin de limiter les ressources nécessaires. En regroupant les sessions de jeu sur un nombre minimal d’instances de serveur, l’utilisation des ressources est maintenue à un niveau constamment élevé.

    En utilisant largement les services gérés, le présent guide réduit votre impact individuel sur l’environnement.  

    Vous pouvez réduire davantage l’impact sur la durabilité des ressources inutilisées en lançant des serveurs de jeu sur les parcs d’instance Spot et en lançant des tâches de joueur virtuel sur Fargate Spot.

    Lire le livre blanc sur le développement durable

Déployer en toute confiance

Prêt à déployer ? Consultez l’exemple de code sur GitHub pour obtenir des instructions de déploiement détaillées afin de le déployer tel quel ou de le personnaliser en fonction de vos besoins. 

Accéder à l’exemple de code

Avertissement

Les exemples de code, les bibliothèques de logiciels, les outils de ligne de commande, les preuves de concept, les modèles ou toute autre technologie connexe (y compris tout ce qui précède qui est fourni par notre personnel) vous sont fournis en tant que contenu AWS en vertu du contrat client AWS ou de l'accord écrit pertinent entre vous et AWS (selon le cas). Vous ne devez pas utiliser ce contenu AWS dans vos comptes de production, ni sur des données de production ou autres données critiques. Vous êtes responsable des tests, de la sécurisation et de l'optimisation du contenu AWS, tel que les exemples de code, comme il convient pour une utilisation en production, en fonction de vos pratiques et normes de contrôle de qualité spécifiques. Le déploiement de contenu AWS peut entraîner des frais AWS pour la création ou l'utilisation de ressources payantes AWS, telles que l'exécution d'instances Amazon EC2 ou l'utilisation du stockage Amazon S3.