Modifier

Le gaming avec Azure Cosmos DB

Azure App Service
Azure Cosmos DB

Idées de solution

Cet article présente une idée de solution. Si vous souhaitez que nous développions le contenu avec d’autres informations, telles que des cas d’usage potentiels, d’autres services, des considérations d’implémentation ou un guide des prix, adressez-nous vos commentaires GitHub.

Cette solution de gaming met à l'échelle de manière élastique votre base de données pour prendre en charge les pics de trafic imprévisibles et fournir une expérience multijoueur à faible latence à l'échelle mondiale.

Architecture

Architecture diagram that shows a gaming solution idea that uses Azure Cosmos DB.

Téléchargez un fichier Visio de cette architecture.

Dataflow

  1. Azure Traffic Manager route le trafic des jeux d’un utilisateur vers les applications hébergées dans Azure App Service, Functions ou Containers, et vers les API publiées par le biais de la passerelle d’API Azure.
  2. Azure CDN fournit des images statiques et du contenu de jeu à l’utilisateur qui sont stockés dans le Stockage Blob Azure.
  3. Azure Cosmos DB stocke les données d’état du jeu de l’utilisateur.
  4. Azure Databricks met en corrélation, nettoie et transforme les données d’état du jeu.
  5. Azure Functions traite les insights dérivés d’Azure Databricks et pousse (push) les notifications vers les appareils mobiles à l’aide d’Azure Notification Hubs.

Components

Cette architecture inclut les composants suivants :

  • Azure Traffic Manager est un équilibreur de charge DNS qui contrôle la distribution du trafic utilisateur pour les points de terminaison de service dans différentes régions Azure. Pendant le fonctionnement normal, il achemine les requêtes vers la région primaire. Si cette région n’est plus disponible, Traffic Manager peut basculer vers une région secondaire, si nécessaire.

  • Gestion des API Azure fournit une passerelle API qui se trouve en face des API de gaming. Gestion des API peut également servir à implémenter des problèmes tels que :

    • Appliquer des quotas d’utilisation et des limites de débit
    • Valider des jetons OAuth pour l’authentification
    • Activer des requêtes de Cross-Origin (CORS)
    • Mise en cache des réponses
    • Suivi et enregistrement des requêtes
  • Azure App Service héberge des applications API permettant une mise à l’échelle automatique et une haute disponibilité sans avoir à gérer l’infrastructure.

  • Azure CDN fournit le contenu statique, mis en cache à partir d’emplacements proches des utilisateurs pour réduire la latence.

  • Le Stockage Blob Azure est optimisé pour stocker de grandes quantités de données non structurées, telles que des médias de gaming statiques.

  • Azure Cosmos DB est un service de base de données NoSQL complètement managé pour la création et la modernisation d’applications scalables haute performance.

  • Azure Databricks est une plateforme d’analytique basée sur Apache Spark et optimisée pour la plateforme de services cloud Microsoft Azure.

  • Azure Functions constitue une option de calcul serverless qui permet aux applications de s’exécuter à la demande sans avoir à gérer l’infrastructure.

  • Azure Notification Hubs est un moteur de notifications Push extrêmement scalable qui permet d’envoyer rapidement des notifications à de nombreux appareils mobiles et plateformes.

Détails du scénario

Cas d’usage potentiels

Ce scénario spécifique est basé sur un scénario de jeu, pour l’industrie du développement de jeux. Les modèles de conception sont pertinents pour de nombreux secteurs qui doivent traiter des appels web et des demandes d’API à fort trafic, par exemple des applications d’e-commerce et de vente.

Étapes suivantes

Consultez les articles suivants relatifs à Azure Cosmos DB :

Documentation du produit :

Les idées de solutions suivantes font appel à Azure Cosmos DB :