云游戏调度优化实践

B站影视 内地电影 2025-10-27 21:35 1

摘要:云游戏作为一种新兴的游戏模式,将游戏的存储、计算和渲染任务从本地终端迁移至云端服务器,使玩家无需配备高性能的硬件,仅通过网络实时接收来自云端服务器的游戏音视频流,即可畅玩各类大作。云游戏突破了设备性能的限制,让“低配”玩家也能拥有“高配”体验,但同时也对终端与

概述

云游戏作为一种新兴的游戏模式,将游戏的存储、计算和渲染任务从本地终端迁移至云端服务器,使玩家无需配备高性能的硬件,仅通过网络实时接收来自云端服务器的游戏音视频流,即可畅玩各类大作。云游戏突破了设备性能的限制,让“低配”玩家也能拥有“高配”体验,但同时也对终端与云端服务器之间的网络连接质量提出了更高要求。

云游戏技术架构概览

为了保障云游戏玩家与云端服务器之间的网络连接质量,云游戏服务提供商通常会在全国范围内部署多个云端服务器节点。如下图所示,当玩家发起游戏请求时,调度系统会根据其地理位置、网络运营商等信息,从众多候选节点中挑选出一个最合适的,随后玩家与该节点建立连接并开始游戏。可以说调度系统是连接玩家与云端服务器的关键中枢,它就像一位交通指挥员,为每一位玩家规划出最快捷、最顺畅的路径。一般来讲,同省同运营商的节点与玩家之间的网络连接质量最优。因此,除了用户体验评分之外,同省调度率也是衡量调度质量的关键指标之一。

云游戏用户建联过程

本文回顾了我们在过去一年中围绕抖音云游戏调度系统展开的一系列思考和优化实践。具体而言,我们首先设计并实现了一套离线调度模拟器,能够基于线上数据精准模拟、复现不同调度策略的效果,助力算法的高效验证与迭代。其次,我们提出一种基于最小费用流的调度算法,力求在资源有限的条件下尽量逼近全局最优调度。线上部署结果表明,我们所提出的优化策略显著提升了用户体验评分与同省调度率。从业务视角来看,这些优化策略带来了人均游戏时长1~2分钟的增长,有效增强了云游戏玩家的粘性和整体业务表现。更重要的是,我们构建了一套可持续迭代的调度优化机制,为大规模云服务的调度系统设计提供了重要参考。

背景介绍

现有方法

目前,云游戏调度系统普遍采用基于静态规则的服务器调度策略,典型方法包括“地理距离优先”“运营商优先”。简单来说,就是靠一套预设的规则快速挑选出一个局部最优的服务器节点。以“运营商优先”为例,调度系统通常按照以下优先级为用户分配节点:同省同运营商 > 跨省同运营商 > 同省跨运营商 > 跨省跨运营商,其核心目的是尽量避免因跨运营商连接所带来的网络延迟和不稳定问题。

示例一

以“运营商优先”为例,假设用户位于江苏省,使用的是中国电信网络,全国的服务器节点如下:

广西 - 联通节点(跨省跨运营商)

湖北 - 移动节点(跨省跨运营商)

江苏 - 电信节点(同省同运营商)

河北 - 移动节点(跨省跨运营商)

根据“运营商优先”的调度规则,调度系统首先会为用户分配同省且同运营商的节点,即江苏-电信节点。若该节点资源已全部耗尽,系统将依次考虑其他优先级稍低的节点:湖北-移动节点、河北-移动节点和广西-联通节点。

说明:因为湖北在地理位置上与江苏更近,所以湖北-移动节点的优先级要高于河北-移动节点。

这类基于静态规则的服务器调度策略实现简单、部署方便,在传统内容分发网络(CDN)或短连接类业务中表现尚可。然而,在云游戏场景中就有些“力不从心”了,面对有限的资源,它很难实现全局视角下的最优调度。根本原因在于云游戏与CDN等短连接业务在调度需求上存在显著差异,具体包括以下三方面:

网络质量要求高:云游戏对网络连接质量的要求极高,任何轻微的延迟或抖动,都可能转化为玩家的操作不跟手或卡顿,进而导致游戏体验的严重劣化。

并发服务数量低:在CDN这类短连接场景中,一台服务器通常可并发服务数百甚至上千名用户。但云游戏就不一样了,服务器需要为每位玩家单独完成游戏画面渲染与编码,资源开销极大,单台服务器并发服务2至3人就已经接近极限。

连接持续时间长:CDN的请求就像“打个酱油”——加载个网页、播个视频,可能持续几秒钟就搞定了。而云游戏是“长期作战”——用户一旦接入服务器就会持续连接数十分钟甚至数小时。这意味着,调度系统一旦在开始时为玩家分配错服务器,就会导致该玩家在整个游戏过程中体验持续受损,甚至还可能连累到后续玩家的调度,出现更严重的资源抢占问题(参考示例三)。

面临的挑战

当然,哪怕有一套规则在手,想在抖音云游戏业务中把调度这件事做好,也远不是件容易的事。首先,全国范围内部署的云端服务器资源有限,且在各省之间分布极不均衡;其次,不同位置的玩家即使连接相同的服务器,所获得的体验评分也存在显著差异,进一步加剧了调度决策的复杂性。最后,不同时段发起的玩家调度请求数动态变化,对调度策略的适应性提出了很大挑战。基于对大量调度数据的分析,我们将当前抖音云游戏调度系统存在的核心挑战归纳为以下两点:

云端服务器资源分布图

用户需求分布图

服务器资源分布不均,与用户需求不匹配。理论上,各省的云端服务器资源应与本地用户规模相匹配,这样才能在地理位置上尽可能实现就近调度。然而现实往往不尽人意,受限于机房建设成本、带宽容量与场地等因素,当前的服务器资源在全国范围内呈现明显的不均衡分布。如上图所示(颜色由浅入深代表数值越来越大),可以明显看出广东、江苏等东部沿海省份具备相对充足的服务器资源,而中西部与东北地区则普遍存在资源紧张甚至无资源的情况,迫使大量用户不得不被调度至外省。进一步对比左右两图可以发现,当前的资源供给与用户需求之间存在严重的不匹配,这将显著提升用户跨省调度的概率。

示例二

以“运营商优先”为例,假设用户位于贵州省,使用的是中国联通网络,全国的服务器节点如下:

广西 - 联通节点(跨省同运营商)【资源紧张】

湖北 - 移动节点(跨省跨运营商)【资源充裕】

江苏 - 电信节点(跨省跨运营商)【资源充裕】

河北 - 移动节点(跨省跨运营商)【资源充裕】

因为贵州本省无资源,所以用户必须被调度出省。根据“运营商优先”的规则,调度系统会优先将用户调度至广西-联通节点。

静态规则缺乏全局资源协调能力,易引发资源抢占,难以实现最优调度。基于静态规则的调度策略主要关注用户个体的连接属性(如运营商、地理距离等),缺乏对全局资源供需状态的协调能力,容易导致跨省资源抢占,严重影响整体用户体验。此外,基于静态规则的调度策略未考虑不同地域用户连接同一节点时的体验评分差异,难以实现全局视角下的最优调度。更为严峻的是,在线用户数呈现出明显的波动性,部分地域高峰与低谷时段的在线用户人数差距可达百倍,进一步加剧了调度难度。

示例三

以“运营商优先”为例,假设用户位于广西省,使用的是中国联通网络。如前所述,基于静态规则的调度策略会使大量云南、贵州、四川等地的联通用户都优先调度至广西-联通节点,很容易就把广西-联通节点的资源消耗一空。在这种前提下,全国的服务器节点如下:

广西 - 联通节点(同省同运营商)【资源已耗尽】

湖北 - 移动节点(跨省跨运营商)【资源充裕】

江苏 - 电信节点(跨省跨运营商)【资源充裕】

河北 - 移动节点(跨省跨运营商)【资源充裕】

此时,哪怕是广西本省的联通用户,也不得不被调度到外省的节点,直接导致广西用户的体验评分大打折扣。这就是静态规则下缺乏全局协调能力所引发的资源抢占问题——本地用户反而失去了本地资源。需要指出的是,如果调度规则优先考虑“地理距离”,也会面临类似的问题,这反映出静态规则在资源紧张、体验敏感、需求起伏的业务环境下的局限性。

创新概述

针对上述挑战,我们从“策略验证”和“算法优化”两个方面切入,提出两项关键创新:一方面,我们设计并实现了一套离线调度模拟器,能够支持调度策略的离线评估与快速迭代;另一方面,我们提出一种基于最小费用流的调度算法,力求在资源受限的条件下实现全局视角下的最优调度。

离线调度模拟器

工欲善其事,必先利其器。在策略验证层面,我们设计并实现了一套离线调度模拟器,以更高效的解决云游戏调度系统存在的问题,其由三大核心模块构成:数据处理模块、策略模拟模块与结果评估模块。

首先,数据处理模块负责读取用户调度请求信息(包括时间戳、运营商、地理位置等)、服务器节点信息(如运营商、地理位置、资源上限等)以及用户连接各节点所获得的质量信息(如体验评分、平均游戏时长等),并按时间顺序依次重放调度请求,构建与线上类似的调度流程。需要说明的是,为了提升模拟效率,所有调度请求将以分钟为粒度进行批量处理。接着,策略模拟模块将根据设定的调度策略为每位用户选择最合适的服务器节点,并实时更新节点资源状态以及用户连接信息。节点一旦被分配,其对应资源容量会被立即扣减,并在用户游戏时长结束后释放,实现对资源状态的动态更新。最后,结果评估模块将在所有调度请求模拟完成后计算多项关键指标,包括用户体验评分、同省调度率、资源使用率等,为各种策略的评估与对比提供数据支撑。

总之,该模拟器综合考虑用户分布、服务器资源容量以及用户质量等关键因素,不仅可以量化分析不同的服务器部署方案(如节点选址、资源分布)对调度结果的影响,还支持新策略的效果验证与快速迭代,切实提升调度策略的优化效率。

性能验证

为了评估离线调度模拟器的效果,我们在相同的资源配置和调度策略下,将模拟结果与线上结果进行了对比。下表展示了全国及部分省份在两个核心调度指标——用户体验评分和同省调度率上的差异(模拟结果与线上结果的差值)。

省份 用户体验评分差异同省调度率差异广东0.0020.78%福建-0.0010.04%安徽0.003-0.34%河北0.0030.09%江西0.000-0.41%全国0.0021.64%

从全国数据来看,用户体验评分的模拟值与线上值仅相差0.002,误差极小;同省调度率的差异为1.64%,主要源于线上机房可能存在临时维护或屏蔽等特殊情况,整体误差处于可接受范围之内。

模拟结果与线上结果高度一致,说明所提出的离线调度模拟器具备高质量的仿真性能,为后续调度系统的优化与迭代提供了坚实基础。

基于最小费用流的调度算法

在调度优化层面,我们提出了基于最小费用流的调度算法,将优化目标设定为用户体验评分与同省调度率的加权指标,并通过线性规划方法进行求解以计算在资源受限场景下可实现全局视角下的理论最优调度结果。如上图所示,我们将每分钟的调度过程建模为一个单源汇的最小费用流网络,网络由三类节点组成。

每位用户 被视作一个源点,代表其需要被调度。

每个源点只产生1单位流量,表示该用户必须且只可以被调度到一个服务器节点。

每个服务器 被建模为中间节点,代表其可以被多个用户调度。

每条从 的边表示用户 可被调度至服务器 ,其容量为1,费用为负的体验评分加同省调度奖励分即:

所有服务器节点到汇点M连边,表示所有用户均已完成调度。

这些边的容量设为∞,费用为0,仅用于聚合流量。

在该网络框架下,每位用户只能被分配至一个服务器节点,且各节点的资源容量有限。值得一提的是,为了全面优化调度效果,我们将优化目标设定为用户体验评分和同省调度奖励分的加权值,确保这两个关键指标共同作用于调度决策。系统以分钟为粒度,根据当前在线的用户与节点资源情况,动态求解理论最优调度策略,并计算对应的平均体验评分和同省调度率,作为该时刻的理论最优值。进一步地,系统将所有时刻的最优结果进行求平均,即可计算出在当前资源配置和用户负载条件下可实现的理论性能上限。通过对比分析线上实际调度结果与理论最优结果之间的差异,我们能够识别调度策略的优化空间,并基于此设计新的调度算法,逐步缩小实际与理论最优值之间的差距,从而提升整体调度效果。

实践案例

资源部署优化

在现有调度系统中,云端服务器资源的空间分布与用户需求存在明显不匹配。为了缓解上述供需矛盾,并结合业务方的资源迁移需求,我们基于离线调度模拟器对当前的资源部署情况进行了系统性评估与优化分析,提出一项资源迁移优化策略:将福建省的部分服务器资源迁移至资源紧张的河北省,并保持其他省份的资源情况不变,预期可有效提升用户体验评分和同省调度率。

我们使用离线调度模拟器对该迁移方案进行了仿真测试,为实际部署提供数据支撑和决策依据。

模拟结果 vs 线上结果

配置用户体验评分优化量 同省调度率优化量优化方案模拟结果0.02025.58% 优化方案线上结果0.01884.23%

线上结果表明,资源部署优化后同省调度率提升了4.23%,这一趋势与离线调度模拟器中的预测结果基本一致,验证了模拟器在资源部署评估和优化中的有效性与可靠性。

调度算法优化

为进一步提升调度系统的整体性能,我们围绕“如何逼近理论最优调度结果”这一核心问题,提出了调度算法优化方案,其包括两个关键步骤:

求解理论最优调度结果:使用基于最小费用流的调度算法求解在当前的资源配置和用户负载条件下可达到的理论最优调度结果。

计算线上调度优先级策略(以终为始):以理论最优调度结果为目标,反向计算各个省份用户与各个云服务器节点的优先级,使实际调度行为尽可能逼近最优调度结果,缩小实际体验与理论上界之间的差距,进而优化整体调度效果。

我们使用离线调度模拟器对优化后的调度算法进行了模拟,以评估其性能。

模拟结果 vs 线上结果

优化方案模拟结果0.02142.79%优化方案线上结果0.02231.24%

线上结果表明,优化后的调度算法显著提升了用户体验评分和同省调度率,证明新算法的有效性。同时,实际结果与离线模拟结果的趋势高度一致,进一步验证了模拟器的准确性。

总结

本文针对云游戏调度系统中资源分布不均、静态规则低效等关键问题,提出了一套系统性的优化方法论,包括离线调度模拟器的设计与基于最小费用流的调度算法优化。通过资源部署与调度策略的联合优化,显著提升了调度效果,线上评估结果显示,同省调度率和人均体验评分均有显著提升。

更重要的是,所提出的离线调度模拟器具备出色的仿真精度与泛化能力,能够有效预估优化方案的潜在收益,有助于调度策略的快速迭代。这不仅为云游戏调度系统的持续优化奠定了坚实基础,而且为大规模云服务调度系统的设计提供了重要参考。

团队信息

火山引擎多媒体实验室是字节跳动旗下的研究团队,致力于探索多媒体领域的前沿技术,参与国际标准化工作,其众多创新算法及软硬件解决方案已经广泛应用在抖音、西瓜视频等产品的多媒体业务,并向火山引擎的企业级客户提供技术服务。实验室成立以来,多篇论文入选国际顶会和旗舰期刊,并获得数项国际级技术赛事冠军、行业创新奖及最佳论文奖。

火山引擎是字节跳动旗下的云服务平台,将字节跳动快速发展过程中积累的增长方法、技术能力和工具开放给外部企业,提供云基础、视频与内容分发、大数据、人工智能、开发与运维等服务,帮助企业在数字化升级中实现持续增长。

来源:雷霆战神王

相关推荐