- Bibliothèque de solutions AWS›
- Guide pour l'hébergement d'un backend de jeu personnalisé sur AWS
Guide pour l'hébergement d'un backend de jeu personnalisé sur AWS
Présentation
Ce guide explique comment déployer un système d'identité de jeu multiplateforme, léger et personnalisé, en plus des fonctionnalités de backend de jeu telles que l'hébergement de serveurs de jeu avec Amazon GameLift, le chat avec WebSockets, et les listes d'amis et les recommandations avec Amazon Neptune. Le système d'identité prend en charge un certain nombre d'options d'authentification, notamment invité, Amazon Cognito, Steam, Connexion avec Apple, Google Play et Facebook. Vous pouvez également personnaliser facilement le Guide pour qu'il prenne en charge d'autres plateformes, telles que les consoles. Le guide est conçu pour être facilement extensible avec des fonctionnalités de dorsal personnalisées, et comprend des modèles pour les composants backend sans serveur et conteneurisés.
En outre, ce guide fournit des kits de développement logiciel (SDK) et des exemples de code pour les moteurs de jeu Unreal Engine 5, Unity 2021 (et les versions plus récentes) et Godot 4. Les SDK s'intègrent au composant d'identité et aux exemples de fonctionnalités du backend.
Fonctionnement
Ce schéma d'architecture montre comment déployer un composant d'identité de jeu multiplateforme personnalisé, léger et évolutif et comment utiliser les identités pour s'authentifier auprès de composants de backend de jeu personnalisés sur AWS
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.
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.
Le composant d'identité personnalisée de ce guide utilise AWS X-Ray qui suit les demandes des utilisateurs et exploite Lambda Powertools pour fournir des informations détaillées à partir de la logique principale. En outre, tous les composants de ce guide utilisent Amazon CloudWatch pour suivre les journaux des flux de cloud privé virtuel (VPC), de l'accès à API Gateway, de l'accès à Amazon S3, des complétions Lambda et des tâches AWS Fargate. Enfin, AWS CDK permet des modifications contrôlées et une configuration cohérente dans tous les environnements, vous aidant ainsi à répondre à vos besoins en matière de sécurité et de conformité.
Pour permettre une gestion efficace des identités, le composant d'identité personnalisé du présent guide gère les identités et l'authentification des joueurs. Toutes les autres fonctionnalités du présent guide sécurisent l'accès en validant les jetons Web JSON par rapport aux clés publiques fournies par le composant d'identité. Le composant d'identité personnalisée est protégé par AWS WAF, un pare-feu d'applications Web qui protège les applications contre les exploits Web courants. De plus, toutes les données sont cryptées au repos et en transit.
Le présent guide s'appuie principalement sur des services entièrement gérés qui sont hautement disponibles par défaut dans plusieurs zones de disponibilité (AZ) au sein d'une région AWS. Pour Fargate, une configuration multi-AZ est utilisée pour garantir une haute disponibilité et toutes les tables de base de données de DynamoDB sont protégées par une restauration instantanée.
Le présent guide combine un certain nombre d'approches différentes pour intégrer diverses fonctionnalités afin d'améliorer les performances. Tout d'abord, les services sélectionnés pour le présent guide sont conçus pour fonctionner à grande échelle lors des lancements de jeux et autres pics de trafic en tirant parti des composants de mise à l'échelle automatique des services sans serveur. Ensuite, les données radiographiques fournies par le composant d'identité personnalisé permettent aux développeurs de détecter la congestion et de calibrer le Guidance en fonction de leurs besoins afin d'optimiser les performances. Enfin, les clés publiques qui valident les jetons Web JSON sont fournies via CloudFront afin d'optimiser la latence des composants du backend.
Le présent guide utilise des composants sans serveur dans la mesure du possible, ce qui vous permet de ne payer que pour les ressources exactes que vous utilisez. Pour vous aider à réduire davantage les coûts, pensez aux plans d'épargne AWS qui peuvent être utilisés pour optimiser les coûts à la fois pour Lambda et pour Fargate. En outre, le passage des tables DynamoDB à la demande à la mise à l'échelle automatique de la capacité provisionnée vous permet d'utiliser la capacité réservée de DynamoDB pour réduire les coûts lorsque le trafic de référence est connu.
Tous les services utilisés dans ce guide sont configurés pour évoluer en fonction de la demande, notamment API Gateway, Lambda, DynamoDB, Amazon S3, Fargate, Secrets Manager et AWS WAF, garantissant que seules les ressources minimales sont requises.
Les composants des services sans serveur décrits dans le présent guide se mettent à l'échelle automatiquement, ce qui leur permet de se mettre à l'échelle tout en adaptant continuellement la charge avec le minimum de ressources nécessaires. L'impact environnemental de l'infrastructure est ainsi réduit en évitant de fournir des capacités inutilisées.
Contenu connexe
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