你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

使用 Cosmos DB 的游戏

API 应用
Cosmos DB

“解决方案理念”

如果想了解详细信息,例如潜在用例、备用服务、实施注意事项或定价指南,请通过 GitHub 反馈来告知我们!

此游戏解决方案理念可弹性缩放数据库,以适应不可预知的流量突发,并在全球范围内提供低延迟多玩家体验。 此特定方案基于游戏方案,但设计模式与处理高流量 Web 调用和 API 请求(如电子商务和零售应用程序)所需的许多行业相关。

体系结构

Architecture Diagram下载此体系结构的 SVG

数据流

  1. Azure 流量管理器将用户的游戏流量路由到Azure 应用服务、Functions 或容器中托管的应用,以及通过 Azure API 网关发布的 API。
  2. Azure CDN为存储在Azure Blob 存储的用户提供静态图像和游戏内容。
  3. Azure Cosmos DB 存储用户的游戏状态数据。
  4. Azure Databricks 关联、清理和转换游戏状态数据。
  5. Azure Functions使用 Azure 通知中心处理从 Azure Databricks 派生的见解,并将通知推送到移动设备。

组件

此体系结构包括以下组件:

  • Azure 流量管理器是基于 DNS 的负载均衡器,用于控制不同 Azure 区域中服务终结点的用户流量分布。 在正常运行期间,它将请求路由到主要区域。 如果该区域不可用,流量管理员可以根据需要故障转移到次要区域。

  • Azure API 管理提供位于游戏 API 前面的 API 网关。 API 管理还可用于实现关注点,例如:

    • 强制实施用量配额和速率限制
    • 验证 OAuth 身份验证令牌
    • 启用跨域请求 (CORS)
    • 缓存响应
    • 监视和记录请求
  • Azure 应用服务托管 API 应用程序,允许自动缩放和高可用性,而无需管理基础结构。

  • Azure CDN 从靠近用户的位置提供静态缓存内容,以便减轻延迟。

  • Azure Blob 存储经过优化以存储大量非结构化数据,例如静态游戏媒体。

  • Azure Cosmos DB 是一种完全托管的 NoSQL 数据库服务,用于构建和现代化可缩放的高性能应用程序。

  • Azure Databricks 是基于 Apache Spark 的分析平台,已针对 Microsoft Azure 云服务平台进行优化。

  • Azure Functions是无服务器计算选项,允许应用程序按需运行,而无需管理基础结构。

  • Azure 通知中心 是一个可大规模缩放的推送通知引擎,用于快速向各种移动设备和平台发送通知。

后续步骤

查看有关 Cosmos DB 的以下文章:

产品文档:

以下解决方案创意功能 Azure Cosmos DB: