游戏服务器的架构

客户端 - 服务器架构
游戏服务器通常采用客户端-服务器架构模型。在这种模型中,游戏客户端(玩家)连接到专用的游戏服务器,以访问游戏资源并参与游戏。服务器负责处理客户端请求、管理游戏状态,并协调玩家之间的交互。客户端脚本处理用户界面和本地游戏逻辑,而服务器端脚本则管理跨所有玩家共享的数据处理和游戏逻辑。

专用硬件
游戏服务器通常包含高端硬件组件,如强大的 CPU、大量内存、固态硬盘存储和高速网卡,以满足游戏的计算需求。这些硬件资源通常在同一物理服务器上共享多个游戏服务器实例。专用游戏服务器托管在专业数据中心,提供可靠性和性能优势,消除了本地主机游戏服务器的延迟优势。

可定制性
游戏服务器可由管理员进行定制,允许调整游戏设置、下载内容和服务器行为。然而,这可能与开发人员对游戏体验的初衷相冲突。专用游戏服务器的运行成本有时由游戏开发商或玩家群组承担。大多数使用专用服务器的游戏也支持"监听服务器",允许玩家在自己的硬件上或通过租用主机提供商的服务托管服务器。

托管选择
专用游戏服务器可由游戏开发商自己托管,也可由第三方托管提供商托管。第三方提供商通常提供保证的正常运行时间、服务器管理和技术支持,以确保为玩家提供可靠、流畅的游戏体验。无论是自托管还是第三方托管,游戏服务器架构都旨在为多人在线游戏提供低延迟、高性能和支持大量同时在线玩家的能力。
游戏服务器的扩展性优势

专用游戏服务器的可扩展性优势
游戏服务器相比于监听服务器具有显著的可扩展性优势。专用游戏服务器托管在专业的数据中心,能够获得高可靠性和卓越性能,从而消除了玩家在本地网络托管服务器时可能存在的低延迟优势。

定制化游戏体验
专用服务器允许管理员进行定制化设置,例如调整内置游戏设置、为客户端下载内容以及通过新代码改变服务器行为。这使得服务器管理员和玩家能够根据自身需求定制游戏体验,尽管有时可能与开发商的初衷相悖。

借助云服务实现快速扩展
通过利用 Amazon Outposts 等云服务,游戏开发商能够快速部署游戏服务器,并将服务器基础设施部署在靠近玩家的位置,从而降低延迟,为所有玩家创造公平的游戏环境。Amazon Outposts 将云端能力引入本地,实现了安全的边缘计算,并将云服务扩展到任何位置,包括城市地区、5G 网络和偏远地区。这使得游戏开发商能够根据需求灵活扩展游戏服务器和基础设施,从而优化整体游戏体验。
游戏服务器的负载均衡策略

主从负载均衡策略
对于游戏服务器的负载均衡策略,一种常见的方法是主从 (master-worker) 架构。在这种方式下,一个主服务器负责将工作负载分配给所有的从服务器(或工作服务器)。最初,从服务器处于空闲状态,并向主服务器报告。主服务器随后将任务分配给它们。当主服务器没有更多任务可分配时,它会通知从服务器停止请求新任务。这种策略确保了工作负载在服务器之间的公平分配。

双选择负载均衡策略
另一种负载均衡技术是"双选择" (power of two choices) 方法,其中随机选择两个服务器,然后选择两个选项中较好的一个。与简单的轮询方式相比,这种方法可能更有效。

基于 HTTP 请求的负载均衡
负载均衡还常用于管理对热门网站的 HTTP 请求,在这种情况下,使用多个服务器来处理每秒大量的请求。可以使用诸如轮询 DNS 等技术,其中将多个 IP 地址与一个域名相关联,客户端以轮询方式获得 IP 地址。

总结
负载均衡策略的选择取决于游戏服务器基础设施的具体需求,如任务大小的分布、服务器数量以及所需的负载分布的公平性和效率。通过合理的负载均衡策略,可以提高游戏服务器应用程序的可用性、可扩展性、安全性和性能。
如何优化游戏服务器的性能

优化硬件资源配置

采用专用服务器托管
与在同一台机器上运行游戏客户端和服务器的监听服务器相比,在专业数据中心托管的专用服务器可提供更好的可靠性和性能。专用服务器消除了托管玩家可能持有的低延迟优势,并且不受住宅互联网连接和机器生成游戏输出的影响。

利用云计算优化实例
开发人员可以在计算优化实例上部署游戏服务器,这些实例适合于需要高计算能力的处理密集型应用程序。加速计算实例也非常适合于图形密集型或分析型工作负载,比如游戏开发。

利用边缘计算降低延迟
对于需要低延迟和竞争完整性的游戏,如 VALORANT,开发商可以利用 Amazon Outposts 快速部署游戏服务器,将延迟降低 10 至 20 毫秒,最大限度减少 "窥视者优势",为所有玩家创造公平的竞争环境。此外,Amazon Web Services for the Edge 将云的基础设施、服务、API 和工具更接近终端和用户,允许开发人员利用部署在亚马逊云科技数据中心之外的托管硬件(如大都市、5G 网络和偏远地区)来进一步优化游戏服务器的边缘计算能力。
游戏服务器的安全性保证
游戏服务器的安全性保证是游戏开发和运营中的一个关键环节。游戏服务器需要采取多重安全措施确保游戏数据、玩家信息和交易安全,防止黑客攻击、作弊行为和数据泄露等风险。常见的安全保障措施包括加密通信、身份验证、访问控制、入侵检测和防御、漏洞修复等。同时,游戏服务器还需要具备高可用性和容错能力,以确保游戏的稳定运行。通过云服务器等基础设施的弹性扩展,可以有效应对游戏高峰期的流量涌入,保证游戏体验。总之,游戏服务器的安全性保证需要从多个层面入手,采取全方位的安全防护措施,为玩家提供安全可靠的游戏环境。
试用专用游戏服务器,多场景支持跨平台游戏

处理不同游戏平台请求场景
在游戏支持的任意设备上,无论是移动设备、PC 还是游戏主机,游戏服务器都需要能够解析来自跨平台玩家的入站游戏请求。这包括处理玩家身份验证及验证玩家的游戏账户信息。一旦玩家身份得到验证,游戏服务器就需要使用弹性匹配机制,将玩家相关数据集成至试用专用游戏服务器实例。该弹性匹配机制可根据玩家的位置、延迟等因素,将玩家匹配到最合适的游戏服务器实例上。同时,游戏开发者可以使用软件开发工具包 (SDK) 进行开发与功能集成,以提高工作效率并加快开发进度。

跨平台进行玩家匹配场景
当游戏开发者发出玩家匹配请求时,游戏服务器可以利用规则集进行弹性匹配。规则集是一组预定义的规则,用于评估与匹配玩家。对于需要低延迟的游戏,开发者需要向规则集指明延迟这一特殊的游戏属性指标,并将延迟属性直接传递到评估规则集的规则引擎中。规则引擎会根据这些规则,尽可能将玩家匹配到低延迟的游戏服务器实例上。开发者还可以根据时间推移调整规则集中的规则,以在试用专用游戏服务器实例时,寻找更好的平衡点,从而优化玩家体验。

将玩家连接至游戏服务器场景
以多人在线竞技游戏为例,试用专用游戏服务器的开发者在处理来自多设备的游戏请求与玩家匹配场景中,需要将竞技比赛中的玩家连接到合适的游戏服务器实例上。游戏服务器可以利用其灵活、智能的匹配功能,查找更低延迟的游戏服务器实例,从而优化玩家体验。该智能匹配功能可以考虑玩家的地理位置、网络状况等多种因素,将玩家分配到最佳的游戏服务器实例上,确保玩家获得流畅的游戏体验。
专用游戏服务器托管的收益
在支持跨平台游戏时,采用专用游戏服务器托管解决方案可以带来以下三重收益:
低延迟体验
专用游戏服务器托管解决方案针对游戏领域常见的高并发、高峰值场景进行了优化,可实现45毫秒的全球中值延迟。这种低延迟能为玩家带来流畅、无缝的沉浸式游戏体验,提升游戏的竞争力。
降低成本
与自建服务器相比,采用云托管的专用游戏服务器可节省高达 70% 的成本。在云托管场景中,专用游戏服务器能提供超低延迟的可用服务器实例,单个游戏会话中可支持高达 200 名玩家同时在线。
灵活组合
针对跨平台竞技等特定游戏场景需求,可灵活选择提供全部托管服务,或使用单独模块,以改善跨平台玩家的游戏体验。这种灵活性使得游戏开发商能够根据实际需求定制最佳解决方案。
总之,专用游戏服务器托管解决方案通过提供低延迟、降低成本和灵活组合等优势,为跨平台游戏带来卓越的游戏体验,提高游戏竞争力。游戏开发商可以充分利用这些优势,为玩家打造流畅、沉浸式的游戏世界。
灵活适应基础设施场景
亚马逊云服务为游戏开发者提供了灵活适应各种基础设施场景的专用游戏服务器托管解决方案。这种解决方案可以满足以下后端游戏基础设施场景的需求:

网关
- 安全层面:试用专用游戏服务器服务的网关,可以提供面向玩家的用户身份验证机制,确保游戏环境的安全性。
- 负载均衡层面:网关基于可扩展的机制,支持游戏服务更加稳定地运行,实现高可用性。

游戏服务
- 跨平台多人游戏支持:针对跨平台的多人游戏,试用专用游戏服务器可以提供数据分析等基本功能。
- 无服务器扩展:游戏服务还可以利用无服务器服务进行灵活扩展,满足不同规模的需求。

游戏服务器
- 优化架构:在游戏服务器场景中,试用专用游戏服务器能够显著优化游戏服务架构,提高效率。
- 自动化扩展:当用户匹配进入对战后,游戏服务器可以实现大规模的自动化扩展,满足高并发需求。
通过利用亚马逊云服务的专用游戏服务器托管解决方案,游戏开发者可以轻松构建安全、可靠、高性能的后端游戏基础设施,满足各种场景需求。
亚马逊云科技热门云产品
欢迎加入亚马逊云科技培训中心
欢迎加入亚马逊云科技培训中心
-
快速上手训练营
-
账单设置与查看
-
动手实操
-
快速上手训练营
-
第一课:亚马逊云科技简介
本课程帮助您初步了解云平台与本地环境的差异,以及亚马逊云科技平台的基础设施和部分核心服务,包括亚马逊云科技平台上的弹性高可用架构,架构设计准则和本地架构迁移上云的基本知识。
亚马逊云科技技术讲师:李锦鸿第二课:存储与数据库服务
您将在本课程中学习到亚马逊云科技上的三个存储服务分别是什么。我们也将在这个模块中为您介绍亚马逊云科技上的关系型数据库服务 Amazon Relational Database Service (RDS)。
亚马逊云科技资深技术讲师:周一川第三课:安全、身份和访问管理
在这个模块,您将学习到保护您在亚马逊云科技上构建的应用的安全相关知识,责任共担模型以及身份和访问管理服务, Identity and Access Management (IAM) 。同时,通过讲师演示,您将学会如何授权给 EC2 实例,允许其访问 S3 上的资源。
亚马逊云科技技术讲师:马仲凯 -
账单设置与查看
-
-
动手实操
-
快速注册账号 享用免费套餐
快速注册账号 享用免费套餐
-
1 进入注册页面
-
2 设置用户名及密码
-
3 填写企业信息
-
4 企业信息验证
-
5 完成手机验证
-
6 选择支持计划
-
1 进入注册页面
-
注:该链接中的内容显示语言 是与您的网页浏览器设置相一致的,您可以根据需要自行调整语言栏。 *图片点击可放大
-
2 设置用户名及密码
-
3 填写企业信息
-
*图片可点击放大
-
4 企业信息验证
-
*图片可点击放大
-
5 完成手机验证
-
6 选择支持计划