全球边缘云节点分布
可按需调度游戏服务器容器的不同部署目标。

保留 PlayFab。您的匹配系统、经济系统、身份验证和玩家数据完全保持不变:只有服务器会迁移,随之而去的还有您为高峰之间处于闲置等待状态的备用容量所支付的 Azure 虚拟机账单。
移除 GSDK,将现有的构建版本容器化,并在匹配成功瞬间让 PlayFab Azure Function 部署在 Edgegap 上。Edgegap 的混合编排将裸机私有集群(Private Fleets)与我们拥有 615+ 处站点的边缘云网络相结合,确保您的托管始终具备高成本效益。每次边缘云部署都会根据对局中玩家的实际情况,在请求发出时分配到最佳可用位置。
哪些发生了变化(以及哪些没有变化)
PlayFab Multiplayer Servers 的迁移是托管服务的变更,而非后端的变更。以下是您在迁移过程中可以期待的事项。
具体的逐项特征分析请参见下文的步骤 3:识别并替换特征。
保持不变的是什么
您的网络代码和传输层
Edgegap 绝不干涉您的传输、序列化或 Tick 循环。容器运行的正是您今天构建的同一服务器二进制文件。
您的 PlayFab 后端
對局配對 队列和规则、玩家数据、经济系统、身份验证、排行榜以及 CloudScript 都将保留在 PlayFab 中。此次迁移仅涉及 Multiplay 服务器,不会影响您游戏中的其他任何内容。
您的客户端连接流程
您的客户端仍然会获取一个地址和端口并连接到它。在文档记录的桥接中,它仍然像现在一样从 PlayFab 玩家数据(Player Data)中读取这些信息。
引擎、版本与持续集成
相同的引擎、相同的版本、相同的构建流水线。除了推送镜像之外,您的 CI 不需要任何新步骤。
有哪些变化
GSDK 发布了
PlayFab 游戏服务器 SDK 保留了您的二进制文件:代理启动、就绪和会话回调,以及它在循环中运行的健康和状态报告。而 Edgegap 不需要服务器 SDK。您的服务器在部署时直接从环境变量中读取其公网 IP 和端口。
一次部署调用即可替换备用池
PlayFab Azure Function 无需从您预先配置的容量中请求服务器,而是在找到匹配项时向部署端点发送一次请求,并为该匹配项创建部署。
区域不再是购买决策的限制因素
您不再需要逐个区域规划虚拟机容量。在请求发起时,每次部署都将根据匹配中的玩家进行测算,并放置在边缘云网络中最佳的可用位置。
备用计算不复存在
无需计算备用目标,无需针对每个区域调整百分比阈值和乘数,没有缩容窗口,也无需在高峰期之间保持池的温备。容量不再是您需要操心的工作:专用舰队(Private Fleets)会随着您流量曲线的变化而与我们一同自动调整大小,而边缘云(Edge Cloud)则完全不需要进行任何预配置。
预期时间表
步骤 1
移除 PlayFab 游戏服务器 SDK:代理启动、就绪和会话回调,以及健康和状态报告循环。
~2 小时
步骤 2
如果您已经交付了 Linux 容器构建版本,该制品将保持不变。仅限 Windows 的构建需要先进行 Linux 服务器构建,这是本次迁移中唯一真正艰巨的任务。
~30分钟至2小时
步骤 3
Edgegap 的镜像仓库可免费使用,或者您也可以继续使用 ACR、DockerHub、GitLab 等。
~30 分钟
步骤 4
match_found 规则会运行一个部署在 Edgegap 上的 Azure Function,一旦服务器准备就绪,每位玩家都会在只读数据中获取该地址。
约1天
第 5 步
在全球边缘云(Edge Cloud)上进行部署,还可选择通过专属机群(Private Fleets)免流量费托管来进一步降低成本。
即时部署
详细迁移步骤
如果您希望将游戏服务器从 PlayFab Multiplayer Servers 迁出,同时保留 PlayFab 的其余服务,以下简单步骤将让您立即上手运行。完整说明(包含一个可用的 Unity 示例):结合 Edgegap 的 PlayFab 匹配示例。
在开始之前,先弄清楚哪些内容会迁移、哪些内容不会迁移将有所帮助。
仅迁移多人游戏服务器(Multiplayer Servers):PlayFab 保留您的对局制作器(matchmaker)、玩家数据(Player Data)、经济系统和身份验证,而 Edgegap 则成为运行匹配服务器的地方。Edgegap 是一个 API,不包含服务器 SDK。
我们期望:您当前使用 PlayFab Multiplayer Servers,拥有正常运行的游戏服务器内部版本,可以在您的游戏中添加自动化规则,并且为这两个 Azure Functions 拥有一个 Azure 订阅。
步骤 1:
Edgegap 不需要服务器 SDK 即可集成。第一步是从您的游戏服务器中移除用于初始化 PlayFab 游戏服务器 SDK 的代码:Agent 启动调用、您为服务器激活和会话分配注册的回调、关机和维护处理程序,以及 Agent 期望循环执行的健康状态和玩家状态报告。不需要任何东西来替换它们。在 Edgegap 上,您的服务器从部署时注入的环境变量中读取其所需的内容(包括其公网 IP 和端口映射),并且一旦处于侦听状态即可供玩家使用。如果您使用的是 GSDK 包装器而不是直接集成,它也需要被移除,并且 PlayFab 自己的文档也指出该包装器“不适合用于生产环境”。
步骤 2:
如果您已经在 PlayFab 上运行 Linux 容器构建,这一步只是一项检查而非重新构建:确认镜像在本地构建并启动,然后将其推送到 Edgegap 的免费注册表,或者保留 ACR、DockerHub、GitLab 或任何其他兼容 OCI 的注册表。
如果您的游戏运行 Windows 虚拟机构建,则首先需要一个 Linux 服务器构建。这确实需要费些功夫,但一旦您有了 Linux 服务器目标,Edgegap 专为 Unity、Unreal Engine 和 Godot 提供的专用插件即可帮助您自动构建镜像。
步骤 3:
GSDK 功能 | Edgegap 替代方案 |
|---|---|
游戏服务器 SDK (GSDK) | |
构建和虚拟机规格 | 应用程序和版本。按版本选择 vCPU 和内存,可细分自 0.25 vCPU 起。 |
构建区域 | 无需区域配置。在请求时于边缘云网络中的最佳可用位置进行部署以获取按需算力,在裸金属上使用专用机队(Private Fleets)以获取预留容量。 |
备用服务器与目标备用计算 | 按需算力(边缘云)自动扩缩容。在裸金属上使用专用机队(Private Fleets)以获取持久容量,按月调整合理规模。 |
动态和预定备用 | 无需此项。自动溢出至边缘云。 |
RequestMultiplayerServer | 只需向部署端点发送一次 POST 请求,该请求来自 match_found 规则上的 Azure Function 或您的后端。 |
PlayFab 匹配系统 | 保持不变,但在队列上关闭服务器分配。由 match_found 规则触发部署。 |
服务器连接详情 | 服务器就绪后,由第二个 Azure Function 写入每位玩家的只读玩家数据,并由您的客户端读取。您的游戏服务器不保存任何 PlayFab 密钥。 |
服务器日志和已归档服务器 | |
Game Manager 中的服务器管理 | |
移植工作 | 可选:将您的编码代理连接到 Edgegap MCP 服务器。它会针对您的引擎加载 Edgegap 经过测试的代理技能,然后构建或检查您的镜像、上传并部署您的服务器,且每项更改都可以先进行试运行预览。PlayFab 技能可端到端设置队列、两个 Azure Functions 和 match_found 规则。 |
步骤 4:
Private Fleets 与您当前管理的容量最为接近:持久、专用的裸金属主机,且免出站流量费托管。
区别在于围绕它们开展的工作。无需计算备用目标,无需按区域微调阈值或乘数,也没有缩容窗口。您只需按月调整机群规模,当 Private Fleet 满载时,部署会自动溢出至 Edge Cloud。
定价
了解与您目前的 PlayFab Multiplayer Servers 账单相比,Edgegap 的编排服务如何具有成本效益。
PlayFab 自身的指南建议根据准备时间(propping time)和分配速率来规划待命池的大小,并指出处于准备中(propping)和待命(standing-by)状态的服务器都将向您的游戏收费。
PlayFab Multiplayer Servers | Edgegap | |
|---|---|---|
闲置容量 | 计费。待命和准备中的服务器在峰值之间持续运行并计费 | 在 Edge Cloud 上不计费。零活跃部署费用为 0 美元 |
容量规划方法 | 根据每个地区的准备时间和目标分配速率计算待命目标 | Edge Cloud 无需规划大小。Private Fleets 每月进行容量调整 |
故障模式 | 待命池耗尽:当需求超过置备速度时,服务器请求失败 | 部署按每场比赛创建,从零开始置备,到容器就绪的中位数时间为 2 秒 |
在 PlayFab 上您购买的是机器规格。在 Edgegap 上您购买的是算力。
PlayFab Multiplayer Servers | Edgegap | |
|---|---|---|
单位 | 按每个构建区域的核心、内存和存储选择虚拟机规格 | vCPU-分钟,可从 0.25 vCPU 起细分 |
粒度 | 整台机器,加上由您管理的每台机器服务器打包密度 | 按部署计费,无需进行打包决策 |
费率 | 按虚拟机规格、地区以及 PlayFab 发布的价目表计费 | 全球统一定价,每 vCPU 每分钟 0.00115 美元 |
按峰值规划容量的队列在一周的大部分时间里都处于闲置状态。混合编排通过将裸金属 Private Fleets 与按需 Edge Cloud 相结合,保持托管的高性价比。
PlayFab Multiplayer Servers | Edgegap | |
|---|---|---|
预留容量 | 您按地区规划的待命池,通过阈值和乘数进行调优 | 裸金属 Private Fleets,随着流量曲线变化每月调整大小 |
按需容量 | 动态待命会乘以您配置的目标待命数,最高达到您的最大服务器数 | 拥有 615+ 个位置的 Edge Cloud 网络,每次部署都在请求时选择最佳可用位置 |
数千 CCU 下的净效果 | 容量规划成为持续的运维任务 | 通过合理优化的分配,成本比纯云端低 25% 到 35%。可以在定价计算器中进行建模测算 |
Edgegap | Azure PlayFab | |
|---|---|---|
编排 | 混合编排,无需游戏服务器 SDK: |
|
基础设施 |
| 单一提供商:
|
硬件 |
|
|
部署位置分配 |
|
|
定价 |
| |
可扩展性 |
|
|
集成 |
|
|
技术支持 |
| |
延迟 | 相较于公共云平均降低 58%(Edgegap 案例研究) |
|
历史业绩 |
|

客户
共有 15 个从其他平台迁移到 Edgegap 的工作室案例研究可供参考。

迁移现场运维多人游戏到Edgegap以解决DevOps工作负载
发现为什么#1 VR提取射手游戏是由Edgegap的游戏服务器托管和 orchestration提供支持的。
案例研究

能够即时扩展并改善最终用户体验的持久服务器
了解《岛屿》如何通过Edgegap的全球持续服务器部署提升玩家体验。
案例研究

借助 Edgegap 的游戏服务器编排,几天内迁移了一款轻松治愈的 MMO
Qloud Games 如何在不到 24 小时内将 Loftia 的游戏服务器托管迁移到 Edgegap,并成功举办了一场拥有数千名同时在线玩家的完美封闭测试
案例研究

大规模VR战争:Triangle Factory在Edgegap上发布Forefront 1.0
Triangle Factory 如何将其雄心勃勃的 VR 射击游戏迁移到 Edgegap,并充满信心发布了完整的 1.0 版本。
案例研究

从点对点到公平对决:《Bloody Bastards》启用专属服务器
了解 Tibith Ltd 如何将拥有 4000 万次下载的热门手游《Bloody Bastards》从 P2P 迁移至 Edgegap 的专用服务器和匹配系统,从而确保每场比赛都由服务器端进行权威判定。
案例研究

Noodlecake 如何实现多玩家游戏并让人忘却服务器的存在
Noodlecake 如何将 《Super Flappy Golf》 迁移至 Edgegap 的自动编排系统,并重新专注于游戏开发。
案例研究

竞争激烈的VR游戏需要与之匹配的基础设施:Breachers 迁移至 Edgegap
了解 Triangle Factory 如何将其竞争激烈的 5v5 VR 射击游戏引入专为该类型游戏所需精度而构建的基础设施。
案例研究

使用 Edgegap 的 Fleet 实现完全自动化的服务器管理流程
了解蓝鸭工作室如何使用Edgegap的Fleets API来协调其足球游戏的服务器。
案例研究

Edgegap 上的 1047 Games:平稳的迁移与发布
了解 1047 Games 如何将《Splitgate: Arena Reloaded》迁移到 Edgegap,并在其编排服务上发布 Empulse,同时在整个过程中保持托管服务的稳定可靠。
案例研究

从自制编排到一夜之间达到五万名玩家
Slipstream Games 如何将服务器成本降低 50%,将其延迟从 200-250 毫秒减少到 100-110 毫秒,并在 CrazyGames 上发布,24 小时内达到了 50,000 名玩家。
案例研究

从车队到按需:为一款独立滑板车游戏提供专用服务器
iScoot 如何从基于整批服务器的托管迁移到按需、基于实例的编排,从而将专用服务器缩小到原来的 1/10,并构建出适合独立游戏的成本模型。
案例研究

按需、按预算:Triangle Factory 将 Hyper Dash 引入 Edgegap
一款免费 VR 射击游戏如何利用随玩家规模缩放的按需基础设施,保持快速运行、全球覆盖和高成本效益。
案例研究
了解 Edgegap 自动化游戏服务器编排如何带来无缝的多人游戏体验。
Edgegap 是托管和编排方面的专家。我们的平台专为帮助您加速开发流程而构建,让您可以专注于自己擅长的事情——开发。
不。此次迁移仅移动多人游戏服务器(Multiplayer Servers)。您的匹配队列与规则、玩家数据(Player Data)、经济系统、身份验证、排行榜以及 CloudScript 均保留在 PlayFab 中,并照常运行。该集成由两个 Azure Functions 组成:match_found 规则运行第一个函数,在匹配玩家附近的 Edgegap 上部署服务器;当服务器就绪后,Edgegap 会调用第二个函数,将地址和端口写入每位玩家的只读数据中,供客户端读取。您的游戏服务器不包含任何 PlayFab 密钥。我们将整个流程发布为一个可用的 Unity 示例,并且适用于 Edgegap MCP 服务器的 PlayFab 技能可以通过您的编码代理来完成配置。
它被移除后,并没有任何专有技术来替代它。代理启动、就绪和会话回调、关闭处理程序以及健康报告循环都将不复存在。在 Edgegap 上,您的服务器在部署时从环境变量中读取其公网 IP 和端口映射,并且一旦开始监听即处于就绪状态。如果您是通过 PlayFab 的 GSDK 包装器而不是直接进行集成,该包装器也需要移除;他们自己的文档也指出,该包装器“不适用于生产环境”。
今天,您需要根据支撑时间和分配率来计算备用目标,设置每个区域的最大服务器数量,并调整动态备用阈值和系数以防止资源池枯竭,而处于支撑和备用状态的服务器费用将一直计入您的账单。在 Edge Cloud 上,没有资源池的概念:每次匹配都会获得一次部署,从零开始配置,中位数时间为 2 秒(测量至容器就绪,在游戏引擎启动之前)。如果您想要已经属于自己的容量,Private Fleets 可以为您提供,且按月调整大小,无需按区域进行微调。
这是此页面上唯一可能需要实际工作的部分,所以在这里坦白地说:Edgegap 运行 Linux 容器,因此仅支持 Windows 的服务器在进行其他任何操作之前,都需要先构建一个 Linux 版本。对于大多数 Unity 和 Unreal 项目,这只是一个构建目标以及对特定平台代码的检查。如果您的服务器依赖于仅支持 Windows 的库,那它就是一个项目,需要诚实地评估这对您的架构意味着什么。我们非常乐意与您探讨这一问题:请与我们的工程师联系,我们将与您一起完成向 Linux 游戏服务器实例的迁移。如果您已经在 PlayFab 上交付了 Linux 容器构建版本,则不适用以上任何内容,您的构件也将保持不变。
是的。队列、规则、工单以及玩家所体验到的匹配行为均不受影响,因为匹配工作仍由 PlayFab 处理。发生变化的只有两点:首先,队列中的服务器分配功能将被关闭,因此 PlayFab 仅负责撮合对局;其次,系统不再从您预配的容量中请求服务器,而是通过 match_found 规则运行一个 Azure Function,该函数会向 Edgegap 的部署端点发送一次包含玩家位置信息的请求,从而为实际参与该对局的玩家就近部署服务器。如果您希望以后再做整合,也可以使用 Edgegap 的无代码匹配器,但此次迁移完全不强制要求使用它。
这主要源于当您在等待时,为您已停止付费的容量买单。PlayFab 会对处于“准备中”和“待命”状态的服务器进行计费,因此,一个为您的峰值分配率而设计的服务器池,在每个闲置的时间里也依然会运行并产生费用。而在 Edge Cloud 上,零活跃部署的成本为 $0,计算费用为每 vCPU 每分钟 $0.00115,且可从 0.25 vCPU 起进行细分,而不是您在每个区域中选择的固定虚拟机大小。在数千个并发用户(CCU)的情况下,对私有集群和 Edge Cloud 进行合理优化的拆分,其成本将比纯云端降低 25% 到 35%。您可以在我们的价格计算器中模拟您自己的流量,而无需盲目相信这个范围。
研究方法
每个指标都说明了测量的内容、时间窗口以及排除的内容。基准测试结果的日期可追溯到产生这些结果的测试,并且不会重述为当前数据。
服务器可以在何处运行,以及我们已经运行了多少个。
我们的编排系统交付服务器的速度有多快,以及在测试压力下的承载表现。
我们在编排服务合同中承诺的内容,以及监控系统所记录的内容。
严格履行我们的服务等级协议(SLA)承诺。过去90天的实测正常运行时间达:99.999%。
已签约并承载生产流量的云和裸机服务商,支持自动故障转移。
实时组件状态已发布在 status.edgegap.com。
每个指标一条记录:衡量内容、衡量方式以及时间窗口。
“位置”是一个独立明确的部署目标:它是我们基础设施提供商旗下的一个数据中心站点,可在需要时调度游戏服务器容器。无论同一大都市圈内有多少提供商在运营,每个站点仅计入一次,且仅在接受部署期间才计入。
返回指标 ↑与提供按需云容量的 615 多个边缘云节点分开计算:专属队列(Private Fleet)节点是工作室预留主机供其独家使用的站点。已在 Fleet Manager 页面实时发布。每台专属队列主机每月包含 6 TB 的出站流量。
返回指标 ↑统计自 2019 年 2 月以来的总部署记录,包括启动失败的部署,统计标准与我们的竞争对手一致。
返回指标 ↑从冷启动开始:从头开始配置,而不是分配到已经在运行的服务器上。测量范围截至容器就绪,在游戏引擎启动之前。
返回指标 ↑编排器在 60 分钟内持续启动真实的游戏服务器容器,整个小时平均每秒启动 40 次部署,按部署启动时计数,而非就绪状态。测量范围为 2023 年 11 月的 550 多个地点和 17 家供应商。该基准测试针对单款游戏运行。容量按游戏分配,因此平台上的每款游戏都可以独立且同时扩展到这一水平。每秒 40 次是标准速率。需要更高速率的工作室可以与我们一起规划:在 2026 年 10 月的一次客户负载测试中,部署峰值达到每秒 70 次,单秒最高 85 次,使用的是所有客户共用的同一生产 API 和调度器,且对其他客户没有可测量的影响。我们如何进行这次测试。
返回指标 ↑2023 年 11 月,该平台在 550 多个地点和 17 家供应商中,持续 60 分钟保持了每秒 40 次的游戏服务器部署,按每台服务器 100 名玩家计算,并发会话数达到了 1400 万。游戏服务器为真实容器,玩家客户端为模拟客户端。该基准测试针对单款游戏运行。容量是按游戏分配的,因此平台上的每款游戏都可以独立且同时扩展到这一水平。
返回指标 ↑根据我们的服务等级协议(SLA),可用性承诺达到 99.99%,并通过对五个独立监控组件的持续监测来进行衡量:容器镜像仓库(Container Registry)、控制面板(Dashboard)、公开 API、公开文档和网站。过去 90 天内测得的正常运行时间为:99.999%。实时数据已发布在 status.edgegap.com。
返回指标 ↑按企业实体级别统计的、已签约并承载生产流量的独立供应商。跨服务商的故障转移是自动进行的;这也是多云架构的前提。
返回指标 ↑审查的内容、审查的周期,以及哪些事项带有独立的截止日期。
本页面上的平台数据每季度审核并更新一次。来自实时来源的指标(可用性和游戏服务器部署)带有各自的截止日期,并在测量时同步更新。基准测试结果的时间标注为生成该结果的具体测试时间,不会作为当前数据重新列出。