全球游戏服务器:如何应用架构设计来解决常见问题

每天,游戏行业都在以惊人的速度发展,与全球客户群的指数级扩张同步。网络和服务器滞后可能会导致游戏玩家响应迟缓并与游戏断开连接。因此,解决这些问题已成为游戏社区的当务之急,以改善玩家体验。可靠的服务器、实时数据分析和低延迟对于高质量的内容和出色的玩家体验至关重要。,,这使得游戏自然适合在云上运行。此外,由于云计算提供了灵活且可扩展的基础设施,游戏公司不再需要估计他们将需要的游戏服务器,甚至不需要提前进行额外购买。,手机游戏现在是游戏行业中最大的部分。随着现代移动技术的发展足以处理中等到繁重的游戏,许多主机游戏公司已进入移动领域。手机游戏倾向于创新、VR/AR、移动性、连接性,甚至走向全球。移动游戏的底层架构应该能够处理繁重的工作负载和全球连接,同时将成本保持在最低水平,从而使云计算成为移动游戏公司的最佳选择。,Global Server Game Acceleration(或Global Accelerator)的架构是建立在单一区域部署的中心化游戏服务器和全球部署的具有加速公共网络访问的边缘位置。玩家通过高速通道在地理上被路由到最近的边缘位置。这有助于最大限度地减少延迟,确保高质量的性能和可用性,并实现全球加速。,目前,全球服务器游戏的主要痛点是不同地区的玩家网络延迟不同导致的游戏体验不公平。第三方专用网络连接的价格和质量变化等技术复杂性,全球边缘位置部署涉及的高运维成本,复杂的代理等等。,游戏开发者可能会遇到以下问题:,这些问题使得阿里云移动加速器最适合解决客户端与边缘站点之间的“最后一公里”加速。见下图。,,使用阿里云全球加速,您无需手动配置到边缘站点的内容交付加速,这可能很复杂,并且需要长时间调试。全球加速确保您的高可用性、可扩展性、性能和灵活的路由。,基本上,全球加速通过使用EIP(弹性IP地址)将中心化服务器上​​的ECS实例或VPC负载均衡实例映射到公网来提供点对点加速。全球加速加速跨区域、跨国连接服务器,如下图:,,通过将移动加速与全球加速相结合,我们可以加速从服务器到客户端的整个数据路径。在该方案中,移动加速基于动态路由加速客户端与边缘站点之间的连接,而全球加速通过高速通道加速中心服务器与边缘站点之间的连接。见下图。,,在本文中,我们研究了几种支持全球游戏服务器的架构设计,并评估了每种设计的优缺点。,全球排名设计,在设计全球排名服务时,必须考虑需求、分析、数据结构、排名数据持久化、排名服务器单点故障等问题。一个排名服务架构如下图所示:,,该架构使用Redis实现定时数据。游戏服务器向排名服务器上报排名数据。客户端从游戏服务器拉取排名数据,游戏服务器从排名服务器拉取排名数据。,游戏时间设计,所有游戏服务器均使用GMT Jan 1, 1970 00:00:00 offset(一般秒数绝对值1)来表示游戏时间。这个时间同步到游戏客户端,游戏客户端根据手机设置的时区计算出游戏时间显示在客户端。规格如下图所示。,,为什么需要游戏时间同步?,游戏数据同步,解决方案 1:使用缓存进行即时数据回写,在这种方法中,数据集中存储,本地缓存立即将数据写回数据库。具体架构如下图所示。,,目前涉及到数据同步的场景主要有两种:,场景1 玩家在本地登录(上图中红字标注的解释)。,场景二 玩家跨地域登录。,方案二:区域数据库实时同步,各区域数据库实时同步。您可以使用 Message Service 或Alibaba Cloud DTS来完成此操作。每个区域数据库都存储所有玩家的数据。,,优点:,玩家可以从不同的地区玩游戏,他们的数据不需要迁移。所有区域都支持本地数据读写。,缺点:,异步数据同步会产生数据不一致。如果玩家使用 VPN 访问游戏,则 VPN 暂时断开连接可能会导致玩家在另一个区域重新登录。如果数据同步消息丢失或延迟,玩家再次登录时读取的数据可能不是最新的。,各个区域包含所有玩家数据,因此实时同步可能会给数据库带来很大压力。区域数据库之间的实时同步需要大量的跨区域专线带宽。,方案三:跨区域数据更新,当玩家从不同的区域登录时,玩家的本地服务器必须远程读取战斗数据。战斗结果调用API触发本地服务器数据更新。,,优点:,对于同一区域的玩家,角色数据从最近的本地节点读取/写入。,缺点:,实现逻辑复杂。所有的游戏结果都必须抽象到一个接口,数据由原始服务器接口集中更改。,方案四:远程数据迁移,当玩家从不同的区域登录时,玩家数据从玩家之前的服务器远程迁移。每次玩家登录时,系统都要检查是否需要进行数据迁移。,,游戏本地化解决方案,游戏本土化是游戏进军海外市场的重要考量因素。游戏无论是在海外发布还是希望扩展到新的地区,都必须注意本地化工作。一般的做法是构建一个标准的客户端安装包,里面包含几个基础素材包,不同语言的美术素材包,以及一些程序素材。这允许根据手机的语言版本动态呈现游戏。,常见的安装策略有以下三种:,
,每天,游戏行业都在以惊人的速度发展,与全球客户群的指数级扩张同步。网络和服务器滞后可能会导致游戏玩家响应迟缓并与游戏断开连接。因此,解决这些问题已成为游戏社区的当务之急,以改善玩家体验。可靠的服务器、实时数据分析和低延迟对于高质量的内容和出色的玩家体验至关重要。,,

版权声明:本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权
文章名称:《全球游戏服务器:如何应用架构设计来解决常见问题》
文章链接:https://zhuji.vsping.com/501880.html
本站资源仅供个人学习交流,请于下载后24小时内删除,不允许用于商业用途,否则法律问题自行承担。