部署
了解部署及其生命周期——概念和最佳实践以加深理解。
🗺️ 协排
使用我们的云原生边缘计算方法,在几秒钟内启动新服务器以满足容量需求。我们将服务器视为 牲畜而非宠物 ——完全替换故障实例,而不是逐个人工维护。
您的编排选择将 影响您的运维成本、服务器成本和可扩展性.
在 Discord 上联系 以了解混合编排选项并优化您的托管成本。
为了全面了解所有利弊,让我们比较各种编排方法。
按比赛绑定
为现代工作室提供的黄金标准,提供 最简便的集成与最佳成本效率.
👍 优点
最佳成本效率——按分钟实时扩展以满足玩家需求。
由于无区域托管且 Edgegap 自动化 99% 的任务,运维成本最低。
由于 Edgegap 公有云基础设施拥有 615+ 站点,延迟最低。
在意外流量激增时具有最快的扩展速度(突发能力)。
最高标准的安全性和防作弊(服务器权威)。
意外服务器崩溃对玩家的影响最小,仅影响单场比赛。
👎 缺点
采用新的编排思维模型最初需要一些上手努力。
运行超过 24 小时的服务器将被自动终止。
🧩 最适合
对延迟敏感的游戏—— 当网络代码优化无法克服高延迟时:
第一人称射击、格斗游戏、VR 与 XR(虚拟与扩展现实)等,…
具有 通过设计对比赛时长有上限的,
大逃杀, PvPvE、合作射击、MOBA、体育游戏、ARPG 与地牢爬行者等,…
🔎 可发现性
当有足够玩家加入时启动新游戏 匹配服务.
添加玩家以 用回填替换离开的玩家在现有比赛中.
让玩家浏览服务器并从列表中挑选,具有 服务器浏览器.
Edgegap 会根据每个区域的玩家活动自动上下扩展所有 615+ 服务器位置。为成功做好准备——无缝地 在 60 分钟内扩展到 1400 万并发用户.
区域待命
传统模式,适用于 具有用户生成内容的持久世界和社交型 MMO 游戏.
👍 优点
熟悉且易于理解,老派且经验丰富的做法。
最高标准的安全性和防作弊(服务器权威)。
基于月度承诺的成本易于预测。
👎 缺点
较高的托管成本——每个区域需要一个或多个空闲的待命服务器(突发容量)。
较高的运维成本——按区域重复扩展、运营和维护工作。
玩家基数较小的区域由于需要加入较远的服务器而体验到较高延迟。
🧩 最适合
持久世界,其用户生成内容即使在玩家离线时也存储于服务器上。
MMO、有基地建设或对象放置的沙盒、提取射手等,...
容忍延迟的游戏—— 当服务器权威的实时物理模拟不是必需时:
移动游戏、合作游戏、集换式卡牌/卡牌对战、回合制策略等,…
异步多人, 服务器崩溃对玩家体验影响最小的场景:
与幽灵比拼、掠夺敌方基地、基于计时器的建造/耕作类游戏等,…
初始化耗时较长的应用——当准备服务器需要几分钟时。
🔎 可发现性
让玩家浏览服务器并从列表中挑选,具有 服务器浏览器.
参见 托管集群 用于 在 Edgegap 上自托管您的微服务和后端服务 。
点对点
将开发工作从 专用服务器 转向 用于非竞争性游戏的中继网络代码.
相关主题:监听服务器、玩家主机权威、NAT 打洞。
👍 优点
最低托管成本,仅需要中继服务器来解决 NAT 打洞问题。
最低运维成本——仅需维护客户端构建和分发渠道。
意外服务器崩溃对玩家的影响最小,仅影响单场比赛。
易于实现且原型制作快速,无需任何后端开发。
👎 缺点
点对点网络代码增加开发工作量,需要并发编程技能。
最差的延迟表现且对不利的网络条件(例如移动网络)最敏感。
安全性最弱,易受中间人攻击和会话劫持的影响。
如果未实现自定义主机迁移,主机离开时有断开会话的风险。
🧩 最适合
合作与休闲游戏—— 当作弊不会削弱乐趣或破坏游戏时,
儿童游戏、探索游戏、冒险类等,…
🔎 可发现性
参见我们的 分布式中继 以获取在延迟和安全性方面具备行业最佳表现的点对点服务。
📍 服务器放置
无论您选择哪种编排方法,为一组玩家选择合适的服务器位置对于确保最佳延迟和最优玩家体验都至关重要。了解不同的服务器放置策略,以及它们如何影响您的玩家。
您的服务器放置策略将 影响玩家体验、留存率以及您的游戏评价.
Edgegap 在 可用容量最优的位置 部署,以实现快速且低延迟的比赛。

参见 部署 转向 实时分析服务器放置,以规模化方式。
服务器评分
服务器评分策略使用 Edgegap 的专利方法, 为每场比赛单独优化服务器放置。执行非侵入性遥测以近似每位玩家到我们服务器位置的网络接近度,并选择能提供最佳:
响应性 ——为所有玩家平均提供最低延迟,
公平性 ——为所有玩家提供平衡且公平的延迟。
不可响应的放置 ——服务器位置较远,所有玩家延迟较高:

不公平的放置 ——延迟不均衡,某位玩家处于劣势:

良好放置示例 ——为所有玩家提供响应迅速且公平的延迟:

该策略 对托管彼此相距较远的一组玩家尤其有效 (北美对欧洲,或西海岸对东海岸),这在预先组队的大厅中经常发生。
地理定位
或者, 提供玩家的经纬度坐标或首选服务器位置的坐标 ,而不是利用自动遥测。此方法需要额外的客户端侧地理查询实现,完全依赖游戏开发者的解决方案。
地理定位策略不推荐用于 部署 编排,除非应用有关于跨区数据传输的严格监管要求,或玩家 IP 不可用时。
要在 部署 API中使用此策略,请在您的部署请求中列出玩家的公网 IP 或地理坐标。
区域锁定
服务器可以使用粗略泛化的区域参数来放置,方式为:
基于玩家元数据(玩家账户数据库)自动为玩家选择,或
由玩家在匹配时选择,允许在客户端-服务器延迟高的情况下放置。
单独使用此策略不推荐,因为可能导致糟糕的网络性能。
将 区域选择作为与其他策略结合的预筛选 是更好的替代方案。
🟢 连接质量
有些游戏(和有些玩家)对延迟或卡顿更为敏感。尽管玩家报告是指示大规模事件或回归错误的良好指标, 玩家可能缺乏对网络概念的深入理解 并且容易将责任归咎于工作室、网络代码或服务器。
某些问题的根本原因可能对玩家不可见,因此工作室与托管提供商的协作可能至关重要。 Edgegap 的优先事项始终是提供尽可能最佳的服务。
如果您收到大量玩家报告、经历大范围中断或反复出现问题,请通过我们平台中的支持工单立即与我们联系。
低延迟
玩家延迟由在以下各项之间传输数据的延迟组合构成:
物理设备—— 物理信号在 互联网网络拓扑,
主机到主机 ——由协议、传输和安全措施导致,
进程到进程 ——由在客户端/服务器中对数据的(拆箱)和处理导致。
Edgegap 通过将服务器放置得更接近您的玩家来减少物理延迟,以实现更短的响应时间和更少的网络跳数。凭借覆盖 17 家云与裸金属提供商的站点,您将获得 面向全球玩家的行业领先延迟表现.
服务器和互联网的全球覆盖(不仅限于 Edgegap)因以下因素而受限:
基础设施可用性 ——特定区域的互联网连接质量可能不足,
自然因素 ——高度复杂的服务器机架需要相对稳定的环境。
高可用性
全球各地不同位置的服务器可用性会随时间变化,一天内会多次变动。Edgegap 会自动 按需扩展/缩减 位置 ,并考虑到:突发流量
——在 15 分钟周期内的部署, vCPU 要求
——每次部署更多的 vCPU 会增加特定位置的整体需求, 供应商提供
——某些偏远地点可用的供应商选项较少, 机器可用性
——某些地点可能只提供 4 vCPU 或 8 vCPU 的机器, 工作室请求
用于测试、质量保证、抢先体验、封闭测试或比赛。 所有应用的部署请求会被合并以评估位置需求。默认情况下所有组织具有相同的分配优先级,且存在
为需要特定硬件或位置的企业客户添加私有服务器池的可能性 请.
与我们联系以规划发布 ,或如果您对位置可用性有任何请求。玩家问题解决
玩家问题可能源于服务器错误或提供商事件,但也可能来自第三方,例如本地 ISP、游戏服务、底层库的错误、基础设施提供商或其他来源。
在排查玩家报告或事件时,请考虑以下因素:
匹配质量
本地互联网服务提供商(ISP)可能在短时间内解决某一事件,
某些区域(例如中国、俄罗斯)可能因本地化制裁而受到限制,
缓存级别
——Edgegap 将优先在已缓存的位置进行快速部署: 启用缓存以在几秒内部署您的服务器
——由于缓慢且耗时的初始化流程,部署可能失败: 要增加超时时间,
和 应用与版本 将初始化步骤延后到绝对必要时再执行,
服务器镜像或集成问题
在客户端比赛历史 UI 中显示部署 ID.
以便在排查时追踪玩家报告。 在广泛错误、临时问题和中断时通知用户以缓解负面情绪。
🔄 部署生命周期
Edgegap 的部署会经历若干生命周期阶段,由部署状态表示。
1. 启动部署
一个用于
测试目的的 部署可以使用以下方式启动: - 用于 Unreal Engine 项目的 Docker 扩展或插件,
虚幻引擎(Unreal Engine) - 用于 Unity 项目的插件,
Unity 仪表板网页 UI
——用于测试服务器集成的易用网页界面。 生产环境(线上)
测试目的的 应使用以下方式启动: - 在有其他玩家时按需查找并启动服务器(
request_id (部署 ID)并为部署标记标签 以便之后识别和排查问题。 在使用
进行测试时,您可以覆盖默认 Dockerfile ——服务器对服务器的自定义集成(自定义扩展)。CMD 以使用自定义命令。 2. 部署中
一旦启动部署,我们的系统会快速连续执行若干步骤:
遥测——我们正在测量可用数据中心到每位玩家的网络响应性,
部署——我们正在保留容量并准备启动您的服务器容器,
容器启动——我们正在启动容器、安装依赖并初始化,
后处理——我们正在添加日志存储、监控并完成部署。
请求过多 429
——为确保稳定性并防止意外账单,我们对您的组织进行速率限制,限额为 40 次请求/秒 请联系我们. 以规划发布、估算上线流量并为成功做准备。 3. 部署就绪
您的容器已完全初始化,服务器正在启动。在几秒到一分钟内,服务器可能仍在初始化,直到您的游戏引擎(或自定义运行时)完全准备好接受玩家连接之前可能不会响应玩家请求。
一旦部署就绪,
重试玩家连接直到成功 ,或直到预定义的客户端超时。4. 部署错误
您的部署可能在任何时间因意外原因进入错误状态。在测试集成或测试新的服务器构建时,这种情况更有可能发生。
错误状态的部署不会收取费用,这些部署会在 24 小时后自动停止。
故障排查步骤:
使用
我们的正常运行监控页面验证 Edgegap 服务状态 尝试使用 Docker Desktop 在本地测试您的服务器容器以排除 Edgegap 问题。.
在寻求帮助时,
请包含您的部署 ID 及任何有用的细节 以便我们及时调查! 5. 部署已停止
我们不会在未收到您指示的情况下停止您的服务器
,以避免对玩家体验造成负面影响。您的部署可能因以下原因被停止:通过
DELETE_URL 自停止 ——在玩家离开且比赛结束后部署自行停止,
和 Unreal Engine 以获取我们的建议, Unity 有关正确停止部署的指南,
从后端停止 ——您的后端使用 部署 API,
停止了此部署, 游戏最大时长 应用与版本 ——您在
私有舰队 中分配的时间已到期,
承载您部署的主机通过调度操作被删除。 一旦部署被停止, 我们会触发优雅终止 通过发送 SIGTERM 信号给您的主进程,允许短时间的终止期。期限一到,便会发送 SIGKILL
信号以停止部署。
👀 可观测性
可发现性
允许游戏服务器与第三方互操作并获取运营洞察。一旦就绪,部署会被分配一个 URL(fqdn
)和每个内部端口对应的外部端口。 使用 以获取我们的建议, 部署.
部署标签以便轻松标记您的部署 来自您的游戏服务器的出站流量(到客户端或后端)从不被阻止
或过滤。
Websockets (WS) 与 安全 Websockets (WSS)
要在 Edgegap 上使用基于 websocket 的网络代码,您有两种选择:托管证书
,1 分钟内即可设置,无需编写任何代码: 应用与版本 转向 配置您的
使用 Websocket (WS) 并启用 TLS 升级,
使用 Edgegap URL 连接客户端(例如:)
https://5fa53fa00a57.pr.edgegap.net/自管理证书
,1 分钟内即可设置,无需编写任何代码: 应用与版本 转向 ,如果您想使用自己的自定义域名:,
使用 安全 Websocket (WSS) 使用自定义 DNS 记录(例如在).
Cloudflare )配置您自己的 TLS 证书流程。 以获取我们的建议, 未捕获的服务器异常将导致部署的容器重启并使 TLS 安全失效。在这种情况下,. 停止您的服务器.
将玩家重新匹配到新的部署
服务器状态可能丢失
参见 或 以获取我们的建议, 在 C++ 中获取环境变量 来获取变量值。
应用版本变量
匹配器变量
作为下面部署变量的补充。
自定义变量
为每个部署定义最多 20 个自定义变量,每个变量可包含最多 4KB 的字符串数据。
避免使用保留名称(如下),否则您的自定义变量将被覆盖!通过读取 Edgegap 注入到服务器的变量来访问重要信息:标识符.ARBITRIUM_REQUEST_ID
——例如:
f68e011bfb01.
唯一的部署 ID,也称为请求 ID。用于检索更多信息。通过读取 Edgegap 注入到服务器的变量来访问重要信息:部署 URL 始终具有格式.{ARBITRIUM_REQUEST_ID}.pr.edgegap.net
ARBITRIUM_HOST_ID通过读取 Edgegap 注入到服务器的变量来访问重要信息:162.254.141.66.alpha-north-america-70364ef8
承载您部署的机器的唯一标识符,与其他部署共享。通过读取 Edgegap 注入到服务器的变量来访问重要信息:ARBITRIUM_PUBLIC_IP.该主机的公网 IP 地址,可用于替代 URL 进行连接。 ARBITRIUM_DEPLOYMENT_TAGS.
tag1,tag2
以逗号分隔的用户定义部署标签,通过读取 Edgegap 注入到服务器的变量来访问重要信息:2000便于搜索和过滤资源规格通过读取 Edgegap 注入到服务器的变量来访问重要信息:256ARBITRIUM_HOST_BASE_CLOCK_FREQUENCY,处理器频率(MHz)。通过读取 Edgegap 注入到服务器的变量来访问重要信息:512ARBITRIUM_DEPLOYMENT_VCPU_UNITS
,分配的 vCPU 单位(1024 = 1 vCPU)。
ARBITRIUM_DEPLOYMENT_MEMORY_MB通过读取 Edgegap 注入到服务器的变量来访问重要信息:,分配的内存(MB)(1024 = 1 GB)。.生命周期管理 ARBITRIUM_DELETE_URL.
https://api.edgegap.com/v1/self/stop/9f511e17/660
可从部署内调用,部署将被优雅地停止需要唯一的一次性ARBITRIUM_DELETE_TOKEN
可从部署内调用,通过读取 Edgegap 注入到服务器的变量来访问重要信息:在.Authorization通过读取 Edgegap 注入到服务器的变量来访问重要信息:请求头中。.7df4cd933df87084b34ae80d8abde293
ARBITRIUM_CONTEXT_URL
https://api.edgegap.com/v1/context/9170f5211e17/17部署将被优雅地停止需要唯一的一次性ARBITRIUM_DELETE_TOKEN
https://api.edgegap.com/v1/context/9170f5211e17/17通过读取 Edgegap 注入到服务器的变量来访问重要信息:仅可从部署内调用,返回更多部署详情。.
可发现性
需要唯一的通过读取 Edgegap 注入到服务器的变量来访问重要信息:7777ARBITRIUM_CONTEXT_TOKENdfaf50b9333b9ee07b22ed247e4a17e6通过读取 Edgegap 注入到服务器的变量来访问重要信息:31504ARBITRIUM_PORT_GAMEPORT_INTERNAL,服务器监听的内部端口。
ARBITRIUM_PORT_GAMEPORT_EXTERNAL通过读取 Edgegap 注入到服务器的变量来访问重要信息:,客户端连接的外部端口。出于安全考虑,外部端口值会针对每次部署随机化。
ARBITRIUM_PORT_GAMEPORT_PROTOCOL UDP ,您的网络传输协议。 示例假定您已将端口命名为 应用与版本 gameport (默认)。 每个端口都会添加一组经清理的额外 变量: .
@Super Port!通过读取 Edgegap 注入到服务器的变量来访问重要信息:⇒ARBITRIUM_PORT_SUPER_PORT_INTERNAL Ping 信标.ARBITRIUM_BEACON_ENABLED通过读取 Edgegap 注入到服务器的变量来访问重要信息:139.177.198.69true,如果部署在运行以下服务的私有机群上通过读取 Edgegap 注入到服务器的变量来访问重要信息:30199ARBITRIUM_HOST_BEACON_PUBLIC_IP,最近的信标的公网 IP。通过读取 Edgegap 注入到服务器的变量来访问重要信息:30456ARBITRIUM_HOST_BEACON_PORT_UDP_EXTERNAL
,用于通过 UDP 进行延迟测量。
ARBITRIUM_HOST_BEACON_PORT_TCP_EXTERNAL ,用于通过 TCP 进行延迟测量。结构化信息(作为字符串的 JSON)
仪表盘监控
我们的 仪表盘 提供用于监控服务器可扩展性并协助运营的实用工具。
分析
查找 侧边栏菜单中的分析仪表盘 在 “服务器托管与编排” 类别下。
🌟 升级到按需付费等级 以解锁详细的服务器性能指标和洞察:
通用洞察: 监控带有每个版本实时服务器数量的发布以及资源使用概览,
CPU 洞察: 排查因处理器密集型操作导致的服务器延迟,
内存洞察: 缓解因超出分配内存导致的服务器重启,
网络洞察: 检测低效的网络模式并优化网络代码。

部署地图
在以下位置找到部署地图 仪表盘上的部署详情页面.
在地图上预览部署位置、可用位置和估计玩家位置:

部署平衡点
在以下位置找到部署平衡点热力图 仪表盘上的应用详情页面.
预览部署平衡点热力图并按以下内容筛选: 应用与版本。平衡点是相对于给定部署中每个玩家具有相等网络接近性的近似位置:

部署日志
在以下位置找到部署日志 仪表盘上的部署详情页面.
部署日志显示有关以下内容的信息 部署:

容器日志
在以下位置找到容器日志 仪表盘上的部署详情页面.
在出现问题或调试时检查您的游戏服务器日志:

一旦部署停止,容器日志将被删除。 设置 第三方 S3 日志存储 以保存日志。
容器指标
在以下位置找到容器指标 仪表盘上的部署详情页面.
查看容器指标(处理器、内存、网络)以:
在发生时识别常见连接问题 部署,
检测导致资源使用峰值的低效实现模式,
在特定场景中定位低效的资源使用,
在优化过程中验证服务器资源使用的变化,
基准测试您的服务器初始化资源消耗和时长。
历史指标以 1 分钟时间周期显示值平均,在免费等级可用。
🌟 升级到按需付费等级 以解锁具有 1 秒时间间隔的精确指标。

以规划发布、估算上线流量并为成功做准备。 在发布前请求大规模发布的实时托管支持。
上下文与状态
可以以 JSON 格式检索附加的部署信息:
上下文 API(来自部署)需要上下文 API 令牌,而状态 API 使用您的 Edgegap 令牌。
——为确保稳定性并防止意外账单,我们对您的组织进行速率限制,限额为 - 我们对您的组织速率限制为 10 次请求/秒 用于上下文和状态 API 端点。使用 将玩家重新匹配到新的部署 以获取我们的建议, Webhook(网络钩子) 作为可扩展的解决方案。
筛选部署
要在所有部署中快速搜索,您可以 使用我们的仪表盘:

使用 API 列出部署 并通过后端集成应用筛选:
部署将被优雅地停止 使用 不在(nin)
[ "7e709a0d8efd", "4ba353100b4b" ]
部署将被优雅地停止 使用 不在(nin)
[ "tagA", "tagB" ]
部署将被优雅地停止 使用 不在(nin)
[ "my-app", "my-other-app" ]
部署将被优雅地停止 使用 不在(nin)
[ "1.0.0", "prod" ]
每个属性在单个请求中最多可以有 1 个过滤运算符。参见 API 参考 以了解更多。
按请求中出现的顺序按多个字段对结果进行排序:
升序(asc) 使用 降序(desc)
升序(asc) 使用 降序(desc)
示例过滤查询:
列出 错误中的部署 以进行故障排除和删除。
编码后的 URL:
格式化的 JSON 查询:
列出 应用版本过时的部署 以确认发布已完成。
编码后的 URL:
格式化的 JSON 查询:
别忘了在请求中添加 需要唯一的一次性 带有您的 Edgegap API 令牌的头部。
Webhooks 与回调(Postbacks)
通过在您的部署 API 请求中指定 webhook URL,在您的游戏后端接收有关以下内容的简单 HTTP 通知, 部署 通过在您的 部署 API 请求中指定 webhook URL。可用于:
就绪和错误 webhook 将永远不会针对同一部署同时触发。
Webhooks 不会重试,因此如果您的后端由于速率限制或错误而未处理该请求,webhook 可能会丢失。仅将 webhooks 用于 非关键用例或调试目的.
Webhooks 观察部署生命周期,但无法获知您的场景/关卡初始化状态。要观察场景/关卡的加载进度,请在您的游戏服务器中实现自定义 webhook。
🚨 故障排除
在对部署进行故障排除时:
在本地运行服务器以排除集成错误,
查看本页上的故障排除步骤,
通过以下方式与我们联系 社区 Discord 并附上您的部署 ID。
参见 部署 以获取我们关于处理玩家社区反馈的建议。
无法将客户端连接到服务器 - 请求超时。, 请求超时 , ConnectionFailed ,或 端口验证失败.
首先,确保部署为就绪状态,并且部署日志中没有运行时异常或错误。如果您的部署已停止,请在我们的 仪表盘.
中检查日志。 如果您使用的是 Mirror 网络代码,您需要在 中选择
NetworkManager,重新构建、推送并重新部署您的服务器。如果您使用的是 FishNet 网络代码,您需要在 中启用“Start on Headless” 在您的
ServerManager,重新构建、推送并重新部署您的服务器。如果您使用的是 Photon Fusion 2 网络代码,请确保您的服务器正在传递部署的公共 IP、外部端口和
roomCode在服务器上,并在客户端的 “NeworkRunner.StartGame” 参数中使用相同的房间代码,StartGameArgs。部署 ID(例如b63e6003b19f)是一个很好的选择,因为它在全球范围内唯一且客户端可以通过 匹配器 分配和到 深入解析.请确保您的游戏客户端正在连接到部署详情页面上显示的 外部端口 ,由于安全原因,该值将始终随机化。
如果您在网络代码集成中使用安全 Websocket(WSS)协议,请确保为 WSS 端口的端口配置启用了 TLS 升级。 内部端口 您位于中国并使用
智能舰队(Smart Fleets) 吗?您的连接可能被防火长城屏蔽。考虑向您的舰队添加位于中国的服务器,或使用 VPN 进行连接。我的部署停止/重启后我无法再访问其日志。
如果服务器进程因异常崩溃,我们的系统将尝试自动重启服务器。请考虑在本地测试您的服务器以发现根本原因。
我们只在部署期间保留日志,如果您希望在部署停止后检查日志,请
集成第三方日志存储 以发现停止部署的所有原因。.
参见 部署 我的部署在 X 分钟后自动停止。
一旦部署就绪,您的游戏引擎初始化开始。此过程可能需要数秒到数分钟不等,在此期间服务器不接受玩家连接。
考虑优化服务器初始化以缩短此时间。
游戏客户端应以 1 秒间隔重试连接,持续有限的时间(取决于您的初始化持续时间),之后返回到匹配流程。
考虑添加加载场景,以便服务器可以在客户端同时执行初始化(以及在 Unreal 引擎中进行场景切换)并同步双方状态。
我的 Meta Quest 设备抛出
HTTP 0:无法解析目标主机 当为 Android 目标构建 Unity 应用时,Internet 访问权限可能会从输出的 APK 客户端构建工件中自动删除。 .
在以下位置重新添加权限(之后需要重新构建客户端):
项目设置 / OpenXR /
Meta Quest 支持 / 强制移除 Internet 权限(取消勾选)。 ⚙️ 玩家设置 / Internet Access(设置为需要)。
如果玩家离开我的部署会发生什么?
默认情况下,服务器不会拒绝玩家连接。玩家认证由您的开发者负责,因为可以使用许多不同的方法和玩家认证提供商。
游戏客户端可能会在本地存储连接信息,以便在意外客户端崩溃时尝试重新连接。
要允许玩家加入正在进行的游戏,请考虑使用
会话(Sessions) 深入解析 使用 我的服务器在变为就绪后显示 100% 的 CPU 利用率。.
这可能不是问题,因为游戏引擎在服务器初始化期间往往会执行 CPU 密集型操作。如果在部署开始后 2-3 分钟内 CPU 使用率仍未下降,您可能需要优化服务器或增加应用版本资源。
降低 tick 速率可以影响 CPU 使用,因为服务器执行的消息操作减少。
在免费等级中,您受限于 1.5 vCPU 和 3GB 内存(RAM)。
中检查日志。 如果您使用的是 Mirror 网络代码,您需要在 中选择
NetworkManager,重新构建、推送并重新部署您的服务器。如果您使用的是 FishNet 网络代码,您需要在 中启用“Start on Headless” 在您的
ServerManager,重新构建、推送并重新部署您的服务器。您可以在创建新应用版本时增加分配的资源。您可以在我们的仪表盘中复制您的应用版本并根据需要调整这些值,而无需重新构建服务器或镜像。
我的部署反复重启并显示错误 `OOM kill` 。
最后更新于
这有帮助吗?

