Bermain game menggunakan Azure Cosmos DB

Azure App Service
Azure Cosmos DB

Ide solusi

Artikel ini menjelaskan ide solusi. Arsitek cloud Anda dapat menggunakan panduan ini untuk membantu memvisualisasikan komponen utama untuk implementasi umum arsitektur ini. Gunakan artikel ini sebagai titik awal untuk merancang solusi yang dirancang dengan baik yang selaras dengan persyaratan spesifik beban kerja Anda.

Ide solusi bermain game ini menskalakan database Anda secara elastis untuk mengakomodasi lonjakan lalu lintas yang tidak terduga dan memberikan pengalaman multipemain berlatensi rendah dalam skala global.

Sistem

Diagram arsitektur yang menunjukkan ide solusi game yang menggunakan Azure Cosmos DB.

Unduh file Visio arsitektur ini.

Aliran data

  1. Azure Traffic Manager merutekan lalu lintas game pengguna ke aplikasi yang dihosting di Azure App Service, Functions, atau Kontainer, dan ke API yang diterbitkan melalui Azure API Gateway.
  2. Azure CDN menyajikan gambar statis dan konten game kepada pengguna yang disimpan di Azure Blob Storage.
  3. Azure Cosmos DB menyimpan data status permainan pengguna.
  4. Azure Databricks berkorelasi, membersihkan, dan mengubah data status game.
  5. Azure Functions memproses wawasan yang berasal dari Azure Databricks dan mendorong pemberitahuan ke perangkat seluler, dengan menggunakan Azure Notification Hubs.

Komponen

Arsitektur ini mencakup komponen-komponen berikut:

  • Azure Traffic Manager adalah load balancer berbasis DNS yang mengontrol distribusi lalu lintas pengguna untuk titik akhir layanan di berbagai wilayah Azure. Selama operasi normal, Traffic Manager mengarahkan permintaan ke wilayah utama. Jika wilayah tersebut menjadi wilayah yang tidak tersedia, Traffic Manager dapat mengalihkannya ke wilayah sekunder sesuai kebutuhan.

  • Azure API Management menyediakan gateway API yang berada di depan API Gaming. API Management juga dapat digunakan untuk mengimplementasikan masalah, seperti:

    • Menerapkan kuota penggunaan dan batas tarif
    • Memvalidasi token OAuth untuk autentikasi
    • Mengaktifkan permintaan lintas asal (CORS)
    • Menyimpan cache respons
    • Memantau dan mencatat permintaan
  • Azure App Service menghosting aplikasi API, memungkinkan penyekalaan otomatis dan ketersediaan tinggi tanpa harus mengelola infrastruktur.

  • Azure CDN menayangkan konten statis yang disimpan dari lokasi yang dekat dengan pengguna untuk menurunkan latensi.

  • Azure Blob Storage dioptimalkan untuk menyimpan data terstruktur dalam jumlah yang banyak, seperti media game statis.

  • Azure Cosmos DB adalah layanan database NoSQL yang terkelola sepenuhnya untuk membangun dan memodernisasi aplikasi berperforma tinggi yang dapat diskalakan.

  • Azure Databricks adalah platform analitik berbasis Apache Spark yang dioptimalkan untuk platform layanan cloud Microsoft Azure.

  • Azure Functions adalah opsi komputasi tanpa server yang memungkinkan aplikasi berjalan sesuai permintaan tanpa harus mengelola infrastruktur.

  • Azure Notification Hubs adalah mesin pemberitahuan push yang sangat skalabel untuk mengirim notifikasi dengan cepat ke berbagai perangkat dan platform seluler.

Detail skenario

Kemungkinan kasus penggunaan

Skenario khusus ini didasarkan pada skenario game, untuk industri pengembangan game. Pola desain relevan untuk banyak industri yang diperlukan untuk memproses panggilan web lalu lintas tinggi dan permintaan API, seperti aplikasi e-niaga dan ritel.

Langkah berikutnya

Tinjau artikel berikut di Azure Cosmos DB:

Dokumentasi produk:

Ide solusi berikut menampilkan Azure Cosmos DB: