Oplossingsideeën
In dit artikel wordt een oplossingsidee beschreven. Uw cloudarchitect kan deze richtlijnen gebruiken om de belangrijkste onderdelen te visualiseren voor een typische implementatie van deze architectuur. Gebruik dit artikel als uitgangspunt om een goed ontworpen oplossing te ontwerpen die overeenkomt met de specifieke vereisten van uw workload.
Met dit idee van een gamingoplossing kunt u uw database elastisch schalen om onvoorspelbare pieken van verkeer mogelijk te maken en multispelerervaringen met lage latentie te leveren op wereldwijde schaal.
Architectuur
Een Visio-bestand van deze architectuur downloaden.
Gegevensstroom
- Azure Traffic Manager stuurt het gameverkeer van een gebruiker naar de apps die worden gehost in Azure-app Service, Functions of Containers en naar API's die zijn gepubliceerd via Azure API Gateway.
- Azure CDN dient statische afbeeldingen en game-inhoud voor de gebruiker die zijn opgeslagen in Azure Blob Storage.
- In Azure Cosmos DB worden gegevens van de gamestatus van de gebruiker opgeslagen.
- Azure Databricks correleert, schoont en transformeert gamestatusgegevens.
- Azure Functions verwerkt de inzichten die zijn afgeleid van Azure Databricks en pusht meldingen naar mobiele apparaten met behulp van Azure Notification Hubs.
Onderdelen
Deze architectuur bevat de volgende onderdelen:
Azure Traffic Manager is een op DNS gebaseerde load balancer waarmee de distributie van gebruikersverkeer voor service-eindpunten in verschillende Azure-regio's wordt beheerd. Normaliter worden aanvragen gerouteerd naar de primaire regio. Als deze regio niet beschikbaar is, kan Traffic Manager indien nodig een failover naar de secundaire regio uitvoeren.
Azure API Management biedt een API-gateway die zich voor de Gaming-API's bevindt. API Management kan ook worden gebruikt om problemen te implementeren, zoals:
- Gebruiksquota en frequentielimieten afdwingen
- OAuth-tokens valideren voor verificatie
- CORS (Cross-Origin Requests) inschakelen
- Antwoorden opslaan in cache
- Aanvragen voor bewaking en logboekregistratie
Azure-app Service host API-toepassingen die automatisch schalen en hoge beschikbaarheid mogelijk maken zonder infrastructuur te hoeven beheren.
Azure CDN levert statische, in de cache opgeslagen inhoud van locaties dicht bij gebruikers om de latentie te verminderen.
Azure Blob Storage is geoptimaliseerd voor het opslaan van grote hoeveelheden ongestructureerde gegevens, zoals statische gamingmedia.
Azure Cosmos DB is een volledig beheerde NoSQL-databaseservice voor het bouwen en moderniseren van schaalbare, krachtige toepassingen.
Azure Databricks is een op Apache Spark gebaseerd analyseplatform, geoptimaliseerd voor het Microsoft Azure-platform voor cloudservices.
Azure Functions is een serverloze rekenoptie waarmee toepassingen on-demand kunnen worden uitgevoerd zonder dat ze infrastructuur hoeven te beheren.
Azure Notification Hubs is een zeer schaalbare engine voor pushmeldingen voor het snel verzenden van meldingen naar verschillende mobiele apparaten en platforms.
Scenariodetails
Potentiële gebruikscases
Dit specifieke scenario is gebaseerd op een gamingscenario voor de gameontwikkelingsindustrie. De ontwerppatronen zijn relevant voor veel branches die nodig zijn voor het verwerken van web-aanroepen met veel verkeer en API-aanvragen, zoals e-commerce en retailtoepassingen.
Volgende stappen
Raadpleeg de volgende artikelen over Azure Cosmos DB:
- Veelvoorkomende azure Cosmos DB-gebruiksvoorbeelden
- Wijzigingenfeed in Azure Cosmos DB
- Time to Live (TTL) configureren in Azure Cosmos DB
- Consistentieniveaus in Azure Cosmos DB
- Aanvraageenheden in Azure Cosmos DB
- Partitionering en horizontaal schalen in Azure Cosmos DB
Productdocumentatie:
- Wat is Azure Traffic Manager?
- Azure API Management
- Overzicht van Azure-app Service
- Wat is Azure CDN?
- Wat is Azure Blob Storage?
- Wat is Azure Databricks?
- Inleiding tot Azure Functions
- Wat is Azure Notification Hubs?
Verwante resources
De volgende oplossingsideeën zijn beschikbaar in Azure Cosmos DB: