您现在访问的是微软AZURE全球版技术文档网站,若需要访问由世纪互联运营的MICROSOFT AZURE中国区技术文档网站,请访问 https://docs.azure.cn.

使用 Azure Database for MySQL 进行游戏

API 应用
内容分发网络
Database for MySQL
HDInsight
存储

解决方案理念

如果想了解详细信息(例如潜在用例、替代服务、实现注意事项或定价指南)来扩展本文,请通过反馈GitHub告知我们!

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

体系结构

体系结构关系图 下载此体系结构的 SVG。

数据流

  1. Azure 流量管理器将用户的游戏流量路由到通过 Azure API 网关发布的 Azure 应用服务、Functions 或容器以及 API 中托管的应用。
  2. Azure CDN Azure Blob 门户中存储的用户提供静态图像和游戏存储。
  3. Azure Database for MySQL将用户的游戏数据存储在托管的事务数据库中。
  4. 来自分析Azure Database for MySQL使用 Azure Databricks存储在分析平台中。
  5. (可选) 使用Power BI解释此数据并创建新的可视化效果

组件

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

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

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

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

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

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

  • Azure Database for MySQL 是基于开源 MySQL 数据库引擎的社区版本的完全托管关系数据库服务。

  • Azure HDInsight 是云中适用于企业的托管、全范围开源分析服务。 可以使用开源框架,例如 Hadoop、Apache Spark、Apache Hive、LLAP、Apache Kafka、Apache Storm、R 等等。

  • (可选) Power BI交互式仪表板,该仪表板使用存储在 SQL Server 的数据来驱动预测决策。

后续步骤

以下解决方案创意功能Azure Database for MySQL: