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
Töltse le az architektúra Visio-fájlját.
Adatfolyam
- 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.
- Az Azure CDN statikus képeket és játéktartalmakat biztosít az Azure Blob Storage-ban tárolt felhasználónak.
- Az Azure Cosmos DB tárolja a felhasználó játékállapot-adatait.
- Az Azure Databricks korrelálja, tisztítja és átalakítja a játékállapot-adatokat.
- 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:
- Gyakori Azure Cosmos DB-használati esetek
- Change feed in Azure Cosmos DB
- Élettartam (TTL) az Azure Cosmos DB-ben
- Konzisztenciaszintek az Azure Cosmos DB-ben
- Request Units in Azure Cosmos DB
- Particionálás és horizontális skálázás az Azure Cosmos DB-ben
Termékdokumentáció:
- Mi az Az Azure Traffic Manager?
- Azure API Management
- Azure-alkalmazás szolgáltatás áttekintése
- Mi az Azure CDN?
- Mi az Az Azure Blob Storage?
- Mi az az Azure Databricks?
- Introduction to Azure Functions
- Mi az Az Azure Notification Hubs?
Kapcsolódó erőforrások
A következő megoldási ötletek az Azure Cosmos DB-t jellemzik: