Hry s využitím služby Cosmos DB

API Apps
Cosmos DB

Idea řešení

Pokud se chcete podívat, jak tento článek rozšíříme o další informace, jako jsou potenciální případy použití, alternativní služby, aspekty implementace nebo pokyny k cenám, dejte nám vědět pomocí GitHub Feedback!

Tato herní řešení elastickě škáluje vaši databázi tak, aby vyhovovala nepředvídatelným nárůstům provozu a poskytovala prostředí pro více hráčů s nízkou latencí v globálním měřítku. Tento konkrétní scénář vychází z hraní herních scénářů, ale vzory návrhu jsou relevantní pro mnoho oborů, které jsou potřeba ke zpracování webových hovorů s vysokým provozem a požadavků na rozhraní API, jako jsou e-commerce a maloobchodní aplikace.

Architektura

Diagram architektury Stáhnout SVG této architektury.

Tok dat

  1. Azure Traffic Manager směruje provoz hry uživatele do aplikací hostovaných v Azure App Service, funkcích nebo kontejnerech a rozhraních api publikovaných prostřednictvím Azure API Gateway.
  2. Azure CDN slouží k ukládání statických imagí a herních obsahu uživateli, který je uložený ve službě Azure Blob Storage.
  3. Azure Cosmos DB ukládá data stavu hry uživatele.
  4. Azure Databricks koreluje, cleanses a transformuje data o stavu her.
  5. Azure Functions zpracovává přehledy odvozené z Azure Databricks a nabízená oznámení pomocí Azure Notification Hubs na mobilní zařízení.

Komponenty

Tato architektura zahrnuje tyto komponenty:

  • Azure Traffic Manager je nástroj pro vyrovnávání zatížení založený na DNS, který ovládá distribuci provozu uživatelů pro koncové body služby v různých oblastech Azure. V normálním provozu směruje žádosti do primární oblasti. pokud tato oblast nebude k dispozici, Traffic Manager v případě potřeby může převzít služby při selhání do sekundární oblasti.

  • Azure API Management poskytuje bránu rozhraní API, která je umístěná před herními rozhraními API. API Management taky použít k implementaci otázek, jako je:

    • Vynucování kvót využití a omezení přenosové rychlosti
    • Ověřují se tokeny OAuth pro ověřování.
    • Povolení žádostí mezi zdroji (CORS)
    • Ukládání do mezipaměti odezvy
    • Požadavky na monitorování a protokolování
  • Azure App Service hostuje aplikace API, které umožňují automatické škálování a vysokou dostupnost bez nutnosti spravovat infrastrukturu.

  • Azure CDN poskytuje statický obsah uložený v mezipaměti od umístění blízko uživatelům, aby se snížila latence.

  • Azure Blob Storage jsou optimalizované pro ukládání velkých objemů nestrukturovaných dat, například statických herních médií.

  • Azure Cosmos DB je plně spravovaná databázová služba NoSQL pro vytváření a modernizaci škálovatelných aplikací s vysokým výkonem.

  • Azure Databricks je analytická platforma založená na Apache Spark optimalizovaná pro platformu Microsoft Azure cloudové služby.

  • Azure Functions jsou možnosti COMPUTE bez serveru, které umožňují aplikacím běžet na vyžádání, aniž by museli spravovat infrastrukturu.

  • Azure Notification Hubs je široce Škálovatelný modul nabízených oznámení pro rychlé odesílání oznámení na nejrůznější mobilní zařízení a platformy.

Další kroky

přečtěte si následující články o Cosmos DB:

Azure Cosmos DB následující funkce pro návrhy řešení: