解決方案構想
本文說明解決方案概念。 您的雲端架構師可以使用本指南,協助視覺化此架構的一般實作的主要元件。 以本文為起點,設計符合您工作負載具體要求的完善解決方案。
此遊戲解決方案概念可彈性調整您的資料庫,以容納無法預測的流量高載,並在全球範圍內提供低延遲的多玩家體驗。
架構
下載此架構的 Visio 檔案。
資料流程
- Azure 流量管理員 將使用者的遊戲流量路由傳送至裝載於 Azure App 服務、Functions 或容器中的應用程式,以及透過 Azure API 閘道發佈的 API。
- Azure CDN 會為儲存在 Azure Blob 儲存體 中的使用者提供靜態影像和遊戲內容。
- Azure Cosmos DB 會儲存使用者的遊戲狀態數據。
- Azure Databricks 會相互關聯、清理和轉換遊戲狀態數據。
- Azure Functions 會使用 Azure 通知中樞來處理衍生自 Azure Databricks 的見解,並將通知推送至行動裝置。
元件
此架構包含下列元件:
Azure 流量管理員 是以 DNS 為基礎的負載平衡器,可控制不同 Azure 區域中服務端點的使用者流量分佈。 在一般作業期間,它會將要求路由傳送至主要區域。 如果該區域無法使用,流量管理員 可以視需要故障轉移至次要區域。
Azure API 管理 提供位於遊戲 API 前方的 API 閘道。 API 管理 也可以用來實作考慮,例如:
- 強制執行使用量配額和速率限制
- 驗證 OAuth 令牌以進行驗證
- 開啟跨原始來源要求 (CORS)
- 快取回應
- 監視和記錄要求
Azure CDN 會從靠近使用者的位置傳遞靜態快取的內容,以減少延遲。
Azure Cosmos DB 是完全受控的 NoSQL 資料庫服務,可建置和現代化可調整且高效能的應用程式。
Azure Databricks 是一個針對 Microsoft Azure 雲端服務平台進行最佳化的 Apache Spark 分析平台。
Azure Functions 是無伺服器計算選項,可讓應用程式隨選執行,而不需要管理基礎結構。
Azure 通知中 樞是可大幅調整的推播通知引擎,可快速將通知傳送至各種行動裝置和平臺。
案例詳細資料
潛在使用案例
這個特定案例是以遊戲開發產業的遊戲案例為基礎。 設計模式與處理高流量 Web 呼叫和 API 要求所需的許多產業相關,例如電子商務和零售應用程式。
下一步
檢閱 Azure Cosmos DB 上的下列文章:
- 常見的 Azure Cosmos DB 使用案例
- Azure Cosmos DB 中的變更摘要 \(部分機器翻譯\)
- Azure Cosmos DB 中的存留時間 (TTL)
- Azure Cosmos DB 中的一致性層級
- Azure Cosmos DB 中的要求單位
- Azure Cosmos DB 中的資料分割和水平調整
產品文件:
- 什麼是 Azure 流量管理員?
- Azure API 管理
- Azure App Service 概觀
- 什麼是 Azure CDN?
- 什麼是 Azure Blob 儲存體?
- 什麼是 Azure Databricks?(機器翻譯)
- Azure Functions 簡介
- 什麼是 Azure 通知中樞?
相關資源
下列解決方案構想功能為 Azure Cosmos DB: