Idee per le soluzioni
Questo articolo descrive un'idea di soluzione. L'architetto cloud può usare queste linee guida per visualizzare i componenti principali per un'implementazione tipica di questa architettura. Usare questo articolo come punto di partenza per progettare una soluzione ben progettata in linea con i requisiti specifici del carico di lavoro.
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
Scaricare un file di Visio di questa architettura.
Flusso di dati
- 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.
- Rete CDN di Azure serve immagini statiche e contenuto del gioco all'utente archiviato in Archiviazione BLOB di Azure.
- Azure Cosmos DB archivia i dati sullo stato del gioco dell'utente.
- Azure Databricks correla, pulisce e trasforma i dati sullo stato del gioco.
- 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:
- Casi d'uso comuni di Azure Cosmos DB
- Feed di modifiche in Azure Cosmos DB
- Durata (TTL) in Azure Cosmos DB
- Livelli di coerenza in Azure Cosmos DB
- Unità richiesta in Azure Cosmos DB
- Partizionamento e scalabilità orizzontale in Azure Cosmos DB
Documentazione sui prodotti:
- Che cos'è Gestione traffico di Azure?
- Gestione API di Azure
- Panoramica del servizio app Azure
- Che cos'è la rete CDN di Azure?
- Che cos'è Archiviazione BLOB di Azure?
- Informazioni su Azure Databricks
- Introduzione a Funzioni di Azure
- Che cos'è Hub di notifica di Azure?
Risorse correlate
Le idee della soluzione seguenti offrono Azure Cosmos DB: