概览
工作原理
这些技术细节包含一张架构图,用于说明如何有效使用本解决方案。该架构图展示了关键组件及其相互作用,并逐步概述了架构的结构和功能。
Well-Architected 支柱
上面的架构图是按照 Well-Architected 最佳实践创建的解决方案示例。要做到完全的良好架构,您应该遵循尽可能多的 Well-Architected 最佳实践。
该工具包和示例游戏均使用基础设施即代码服务进行全面部署,这减少了手动流程造成的错误,并减少了部署变更的工作量。
API Gatew ay 上的无服务器 Web 控制台 API 受基于 AWS 身份和访问管理 (IAM) 的身份验证保护,针对 Cognito 用户池。
API Gateway 上的无服务器示例游戏后端受基于 IAM 的身份验证保护,可安全验证玩家的访客身份。
GameLift 上的游戏服务器仅允许访问用于客户端与服务器通信的端口。后端 Lambda 函数只能访问其所需的服务。
数据存储在 DynamoDB 表中,利用按需容量分配来根据需求变化自动扩展。
解决方案后端服务使用 Lambda,它会自动扩展实例。
示例游戏后端支持基于 GameLift Target 的自动缩放,以应对需求的变化。
通过利用 API 网关、 Lambda、Dynam oDB 和 Fargate 等托管无服务器技术,您只需为使用的资源付费,并减少维护解决方案所需的运营工作量。
该解决方案可以部署到您选择的区域,并利用 CloudFront 来减少 Web 控制台最终用户的延迟。
虚拟玩家任务可以通过 Fargate Spot 启动,以降低测试成本。
Web 控制台和示例游戏后端采用无服务器技术,因此您只需为使用的资源付费。
Web 控制台后端利用 Lambda 和 API Gateway 的原生扩展功能,DynamoDB 表使用按需容量分配来确保资源与需求相匹配。
示例游戏后端支持基于 GameLift Target 的自动缩放,以最大限度地减少所需的资源。
本指南广泛使用托管服务,将维持高平均利用率的责任转移给 AWS。
示例游戏后端支持基于 GameLift Target 的自动缩放,以最大限度地减少所需的资源。通过将游戏会话打包到最少数量的服务器实例上,可让资源利用率始终保持在较高水平。
通过广泛使用托管服务,本指南减少了您的个人对环境的影响。
你可以通过在 Spot 舰队上启动游戏服务器,在 F argate Spot 上启动虚拟玩家任务,进一步减少未使用资源对可持续性的影响。
自信地进行部署
为部署做好准备了吗? 查看 GitHub 上的示例代码,了解详细的部署说明,以根据需要按原样部署或进行自定义部署。