Játék az Azure Cosmos DB használatával

Azure App Service
Azure Cosmos DB

Megoldási ötletek

Ez a cikk egy megoldási ötlet. Ha azt szeretné, hogy további információkkal bővítsük a tartalmat, például a lehetséges használati eseteket, alternatív szolgáltatásokat, megvalósítási szempontokat vagy díjszabási útmutatást, a GitHub visszajelzésével tudassa velünk.

Ez a játékmegoldás ötlete rugalmasan skálázza az adatbázist a kiszámíthatatlan adatforgalom miatt, és alacsony késésű többjátékos élményt nyújt globális szinten.

Felépítés

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

Töltse le az architektúra Visio-fájlját.

Adatfolyam

  1. Az Azure Traffic Manager átirányítja a felhasználó játékforgalmát a Azure-alkalmazás Szolgáltatásban, Függvényekben vagy Tárolókban üzemeltetett alkalmazásokhoz, valamint az Azure API Gatewayen közzétett API-khoz.
  2. Az Azure CDN statikus képeket és játéktartalmakat biztosít az Azure Blob Storage-ban tárolt felhasználónak.
  3. Az Azure Cosmos DB tárolja a felhasználó játékállapot-adatait.
  4. Az Azure Databricks korrelálja, tisztítja és átalakítja a játékállapot-adatokat.
  5. Az Azure Functions feldolgozza az Azure Databricksből származó megállapításokat, és leküldi az értesítéseket a mobileszközökre az Azure Notification Hubs használatával.

Összetevők

Ez az architektúra a következő összetevőket tartalmazza:

  • Az Azure Traffic Manager egy DNS-alapú terheléselosztó, amely szabályozza a felhasználói forgalom eloszlását a különböző Azure-régiók szolgáltatásvégpontjai számára. A normál működés során a rendszer az elsődleges régió felé irányítja a kérelmeket. Ha ez a régió elérhetetlenné válik, a Traffic Manager szükség szerint feladatátvételt végezhet a másodlagos régióban.

  • Az Azure API Management egy API-átjárót biztosít, amely a Gaming API-k előtt helyezkedik el. Az API Management olyan problémák megvalósítására is használható, mint például:

    • Használati kvóták és díjkorlátok kikényszerítése
    • OAuth-jogkivonatok érvényesítése hitelesítéshez
    • Forrásközi kérelmek engedélyezése (CORS)
    • Válaszok gyorsítótárazása
    • Monitorozási és naplózási kérelmek
  • Azure-alkalmazás szolgáltatás API-alkalmazásokat üzemeltet, amelyek lehetővé teszik az automatikus skálázást és a magas rendelkezésre állást az infrastruktúra kezelése nélkül.

  • Az Azure CDN statikus, gyorsítótárazott tartalmat biztosít a felhasználókhoz közeli helyekről a késés csökkentése érdekében.

  • Az Azure Blob Storage nagy mennyiségű strukturálatlan adat, például statikus játék adathordozó tárolására van optimalizálva.

  • Az Azure Cosmos DB egy teljes körűen felügyelt NoSQL-adatbázis-szolgáltatás skálázható, nagy teljesítményű alkalmazások létrehozásához és modernizálásához.

  • Az Azure Databricks a Microsoft Azure Cloud Services platformra optimalizált Apache Spark-alapú elemzési platform.

  • Az Azure Functions egy kiszolgáló nélküli számítási lehetőség, amely lehetővé teszi, hogy az alkalmazások igény szerint fussanak infrastruktúra kezelése nélkül.

  • Az Azure Notification Hubs egy nagymértékben skálázható leküldéses értesítési motor, a különböző mobileszközökre és platformokra küldött értesítések gyors küldéséhez.

Forgatókönyv részletei

Lehetséges használati esetek

Ez a konkrét forgatókönyv egy játékforgatókönyven alapul, a játékfejlesztési iparág számára. A tervezési minták számos olyan iparág esetében relevánsak, amelyek nagy forgalmú webes hívások és API-kérések, például e-kereskedelmi és kereskedelmi alkalmazások feldolgozásához szükségesek.

További lépések

Tekintse át a következő cikkeket az Azure Cosmos DB-ről:

Termékdokumentáció:

A következő megoldási ötletek az Azure Cosmos DB-t jellemzik: