Giochi con Azure Cosmos DB

Servizio app di Azure
Azure Cosmos DB

Idee per le soluzioni

Questo articolo è un'idea di soluzione. Per espandere il contenuto con altre informazioni, ad esempio potenziali casi d'uso, servizi alternativi, considerazioni sull'implementazione o indicazioni sui prezzi, inviare commenti e suggerimenti su GitHub.

Questa soluzione di gioco ridimensiona in modo elastico il database per supportare picchi imprevedibili di traffico e offrire esperienze multi-giocatore a bassa latenza su scala globale.

Architettura

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

Scaricare un file di Visio di questa architettura.

Flusso di dati

  1. Gestione traffico di Azure instrada il traffico di gioco di un utente alle app ospitate in servizio app Azure, funzioni o contenitori e alle API pubblicate tramite gateway API di Azure.
  2. Rete CDN di Azure serve immagini statiche e contenuto del gioco all'utente archiviato in Archiviazione BLOB di Azure.
  3. Azure Cosmos DB archivia i dati sullo stato del gioco dell'utente.
  4. Azure Databricks correla, pulisce e trasforma i dati sullo stato del gioco.
  5. Funzioni di Azure elabora le informazioni dettagliate derivate da Azure Databricks e invia notifiche push ai dispositivi mobili usando Hub di notifica di Azure.

Componenti

L'architettura qui illustrata include i componenti seguenti:

  • Gestione traffico di Azure è un servizio di bilanciamento del carico basato su DNS che controlla la distribuzione del traffico utente per gli endpoint di servizio in aree di Azure diverse. Durante il normale funzionamento, le richieste vengono indirizzate all'area primaria. Se tale area non è più disponibile, Gestione traffico può eseguire il failover nell'area secondaria in base alle esigenze.

  • Azure Gestione API fornisce un gateway API che si trova davanti alle API di gioco. Gestione API possono essere usati anche per implementare problemi, ad esempio:

    • applicazione delle quote di uso e dei limiti di frequenza
    • convalida dei token OAuth per l'autenticazione
    • abilitazione di richieste multiorigine (CORS)
    • memorizzazione nella cache delle risposte
    • monitoraggio e registrazione delle richieste
  • app Azure Servizio ospita applicazioni API che consentono la scalabilità automatica e la disponibilità elevata senza dover gestire l'infrastruttura.

  • La rete CDN di Azure fornisce contenuti statici memorizzati nella cache da posizioni vicine agli utenti per ridurre la latenza.

  • Archiviazione BLOB di Azure sono ottimizzati per archiviare grandi quantità di dati non strutturati, ad esempio supporti di gioco statici.

  • Azure Cosmos DB è un servizio di database NoSQL completamente gestito per la creazione e la modernizzazione di applicazioni scalabili e ad alte prestazioni.

  • Azure Databricks è una piattaforma di analisi basata su Apache Spark ottimizzata per la piattaforma dei servizi cloud di Microsoft Azure.

  • Funzioni di Azure è un'opzione di calcolo serverless che consente alle applicazioni di eseguire su richiesta senza dover gestire l'infrastruttura.

  • Hub di notifica di Azure è un motore di notifica push altamente scalabile per inviare rapidamente notifiche a un'ampia gamma di dispositivi mobili e piattaforme.

Dettagli dello scenario

Potenziali casi d'uso

Questo scenario specifico si basa su uno scenario di gioco per il settore dello sviluppo di giochi. I modelli di progettazione sono rilevanti per molti settori necessari per elaborare chiamate Web e richieste API ad alto traffico, ad esempio e-commerce e applicazioni di vendita al dettaglio.

Passaggi successivi

Vedere gli articoli seguenti in Azure Cosmos DB:

Documentazione sui prodotti:

Le idee della soluzione seguenti offrono Azure Cosmos DB: