Çözüm fikri
bizi görmek isterseniz, olası kullanım durumları, alternatif hizmetler, uygulama değerlendirmeleri veya fiyatlandırma kılavuzu gibi daha fazla bilgi için bu makaleyi genişlettikten sonra GitHub geri bildirimdebulunun!
Bu oyun çözümü fikir esnek, veritabanınızı tahmin edilemeyen sayıda trafiği kapsayacak şekilde ölçeklendirir ve küresel ölçekte düşük gecikmeli çok oyunculu deneyimler sağlar. Bu özel senaryo bir oyun senaryosuna dayalıdır, ancak 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örde uygundur.
Mimari
Bu mimarinin bir SVG indirin.
Veri akışı
- Azure Traffic Manager, bir kullanıcının oyun trafiğini Azure App Service, işlevleri veya kapsayıcıları içinde barındırılan uygulamalara ve Azure apı Gateway aracılığıyla yayınlanan apı 'lere yönlendirir.
- Azure CDN, Azure Blob Depolama depolanan kullanıcıya statik görüntüler ve oyun içerikleri sunar.
- Azure Cosmos DB kullanıcının oyun durumu verilerini depolar.
- Azure Databricks, oyun durumu verilerini yeniden ilişkilendirir, temizler ve dönüştürür.
- Azure Işlevleri, Azure Notification Hubs kullanarak Azure Databricks türetilen öngörüleri işler ve mobil cihazlara bildirimleri gönderir.
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ı denetleyen 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 ikincil bölgeye gerektiği gibi yük devreder.
Azure API Management , oyun API 'lerinin önünde bulunan bir API ağ geçidi sunar. API Management, şunları gibi konuları uygulamak için de kullanılabilir:
- Kullanım kotalarını ve oran sınırlarını zorlama
- Kimlik doğrulaması için OAuth belirteçleri doğrulanıyor
- Çıkış noktaları arası istekleri etkinleştirme (CORS)
- Önbelleğe Alma yanıtları
- İzleme ve günlüğe kaydetme istekleri
Azure App Service , altyapıyı yönetmek zorunda kalmadan otomatik ölçeklendirme ve yüksek kullanılabilirliğe ızın veren API uygulamalarını barındırır.
Azure CDN , gecikme süresini azaltmak için konumlardan kullanıcılara yakın statik, önbelleğe alınmış içerik sunar.
Azure Blob Depolama , statik oyun medyası gibi büyük miktarda yapılandırılmamış veriyi depolamak için iyileştirilmiştir.
Azure Cosmos DB , ölçeklenebilir, yüksek performanslı uygulamalar oluşturmak ve bunları yönetmek için 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 işlevleri , uygulamaların altyapıyı yönetmek zorunda kalmadan isteğe bağlı olarak çalışmasına izin veren sunucusuz işlem seçenekleridir.
Azure Notification Hubs , çeşitli mobil cihazlara ve platformlara hızlı bir şekilde bildirim göndermek için yüksek düzeyde ölçeklenebilir bir anında iletme bildirimi altyapısıdır.
Sonraki adımlar
Cosmos DB aşağıdaki makaleleri gözden geçirin:
- ortak Azure Cosmos DB kullanım örnekleri
- Azure Cosmos DB akışı değiştirme
- Azure Cosmos DB'de Yaşam Süresi (TTL)
- Azure Cosmos DB'deki tutarlılık düzeyleri
- Azure Cosmos DB'de İstek birimleri
- Azure Cosmos DB'de bölümleme ve yatay ölçeklendirme
İlgili kaynaklar
aşağıdaki çözüm fikirleri özelliği Azure Cosmos DB: