Azure Cosmos DB kullanarak oyun oynama

Azure App Service
Azure Cosmos DB

Çözüm fikirleri

Bu makale bir çözüm fikridir. İçeriği olası kullanım örnekleri, alternatif hizmetler, uygulama konuları veya fiyatlandırma yönergeleri gibi daha fazla bilgiyle genişletmemizi isterseniz GitHub geri bildirimi sağlayarak bize bildirin.

Bu oyun çözümü fikri, öngörülemeyen trafik artışlarını karşılamak ve küresel ölçekte düşük gecikmeli çok oyunculu deneyimler sunmak için veritabanınızı esnek bir şekilde ölçeklendirir.

Mimari

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

Bu mimarinin bir Visio dosyasını indirin.

Veri akışı

  1. Azure Traffic Manager, kullanıcının oyun trafiğini Azure Uygulaması Hizmeti, İşlevler veya Kapsayıcılar'da barındırılan uygulamalara ve Azure API Gateway aracılığıyla yayımlanan API'lere yönlendirir.
  2. Azure CDN, kullanıcıya Azure Blob Depolama depolanan statik görüntüler ve oyun içeriği sağlar.
  3. Azure Cosmos DB , kullanıcının oyun durumu verilerini depolar.
  4. Azure Databricks , oyun durumu verilerini ilişkilendirir, temizler ve dönüştürür.
  5. Azure İşlevleri, Azure Databricks'ten türetilen içgörüleri işler ve Azure Notification Hubs'ı kullanarak mobil cihazlara anında iletme bildirimleri verir.

Bileşenler

Bu mimari aşağıdaki bileşenleri içerir:

  • Azure Traffic Manager , farklı Azure bölgelerindeki hizmet uç noktaları için kullanıcı trafiğinin dağıtımını denetleen DNS tabanlı bir yük dengeleyicidir. Normal işlemler sırasında, istekleri birincil bölgeye yönlendirir. Bu bölge kullanılamaz duruma gelirse Traffic Manager gerektiğinde ikincil bölgeye yük devredebilir.

  • Azure API Management , Oyun API'lerinin önünde yer alan bir API ağ geçidi sağlar. API Management, aşağıdakiler gibi endişeleri uygulamak için de kullanılabilir:

    • Kullanım kotalarını ve hız sınırlarını zorunlu tutma
    • Kimlik doğrulaması için OAuth belirteçlerini doğrulama
    • Çıkış noktaları arası istekleri etkinleştirme (CORS)
    • yanıtları Önbelleğe Alma
    • İstekleri izleme ve günlüğe kaydetme
  • Azure Uygulaması Hizmeti, altyapıyı yönetmek zorunda kalmadan otomatik ölçeklendirme ve yüksek kullanılabilirlik sağlayan API uygulamalarını barındırıyor.

  • Azure CDN , gecikme süresini azaltmak için kullanıcılara yakın konumlardan statik, önbelleğe alınmış içerik sunar.

  • Azure Blob Depolama statik oyun medyası gibi büyük miktarlarda yapılandırılmamış verileri depolamak için iyileştirilmiştir.

  • Azure Cosmos DB , ölçeklenebilir, yüksek performanslı uygulamalar oluşturmaya ve modernleştirmeye yönelik tam olarak yönetilen bir NoSQL veritabanı hizmetidir.

  • Azure Databricks, Microsoft Azure bulut hizmetleri platformu için iyileştirilen Apache Spark tabanlı bir analiz platformudur.

  • Azure İşlevleri, uygulamaların altyapıyı yönetmek zorunda kalmadan isteğe bağlı olarak çalışmasını sağlayan sunucusuz bir işlem seçeneğidir.

  • Azure Notification Hubs , çeşitli mobil cihazlara ve platformlara hızla bildirim göndermeye yönelik yüksek düzeyde ölçeklenebilir bir anında iletme bildirimi altyapısıdır.

Senaryo ayrıntıları

Olası kullanım örnekleri

Bu özel senaryo, oyun geliştirme endüstrisi için bir oyun senaryoyu temel alır. Tasarım desenleri, e-ticaret ve perakende uygulamaları gibi yüksek trafikli web çağrılarını ve API isteklerini işlemek için gereken birçok sektör için geçerlidir.

Sonraki adımlar

Azure Cosmos DB ile ilgili aşağıdaki makaleleri gözden geçirin:

Ürün belgeleri:

Aşağıdaki çözüm fikirleri Azure Cosmos DB'yi içerir: