Passer au contenu principal

Bibliothèque de solutions AWS

Guide pour l’hébergement de jeux à monde persistant sur AWS

Présentation

Le présent guide permet aux développeurs de jeux de créer des jeux mondiaux permanents et d'héberger des mondes virtuels sur AWS à l'aide d'Amazon GameLift et de composants backend sans serveur. L'architecture utilise des composants gérés et sans serveur pour réduire les efforts opérationnels et les mettre à l'échelle en fonction de la demande des joueurs. Les développeurs peuvent utiliser cette architecture pour se lancer dans le développement permanent de jeux en monde virtuel sur MacOS et Windows. Le présent guide inclut l'automatisation de l'infrastructure en tant que code (IaC), des scripts de configuration pour implanter les dépendances et un exemple d'implémentation client/serveur Unity. 

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.

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

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.

AWS Cloud Development Kit (AWS CDK) gère les déploiements et les mises à jour en utilisant AWS CloudFormation pour contrôler les mises à jour et les annulations des ressources. Les erreurs causées par les modifications manuelles de configuration sont ainsi réduites.

Pour les mises à jour de la flotte Amazon GameLift, CloudFormation créera une flotte de remplacement. Il attendra que le remplacement soit pleinement actif pour accepter le trafic avant de mettre fin à l'ancienne flotte.

Lire le livre blanc sur l'excellence opérationnelle

Le client du jeu utilise les identités d'Amazon Cognito du groupe d'identités pour sécuriser l'accès aux services backend. Pour ce faire, il suffit de signer les demandes à l'aide des informations d'identification AWS Identity and Access Management (IAM) fournies par le pool d'identités. Seules les demandes authentifiées sont autorisées vers les API fournies hébergées sur API Gateway. De plus, les clients du jeu ne sont autorisés à accéder qu'aux données de leur propre compte.

Lire le livre blanc sur la sécurité

Si le serveur de jeu (et par conséquent le monde du jeu) tombe en panne, l'architecture remplacera automatiquement le monde par un nouveau monde, qui aura accès aux mêmes données permanentes de ce monde spécifique.

Lire le livre blanc sur la fiabilité

Amazon GameLift permet une communication directe entre le client et le serveur afin d'optimiser les performances en temps quasi réel. L'architecture permet aux développeurs d'héberger des serveurs de jeux dans plusieurs Régions AWS, réduisant ainsi la latence entre le client du jeu et le serveur.

Lire le livre blanc sur l'efficacité des performances

L'architecture exploite des composants sans serveur, notamment API Gateway, Lambda et DynamoDB, qui vous permettent de réduire les coûts en payant la quantité exacte de ressources en fonction du trafic des joueurs. En outre, Amazon GameLift peut être configuré de manière à se mettre à l'échelle en fonction de la demande, afin que vous disposiez d'un minimum de ressources inutilisées à tout moment.

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

Cette architecture utilise des services gérés et sans serveur pour exécuter uniquement les ressources nécessaires à la charge de jeu actuelle, réduisant ainsi votre impact individuel sur l'environnement.
Lisez le livre blanc sur le développement durable

Clause de non-responsabilité

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.

Avez-vous trouvé les informations que vous recherchiez ?

Faites-nous part de vos commentaires afin que nous puissions améliorer le contenu de nos pages