游戏服务器托管提供商对为其客户托管游戏服务器的硬件有一套独特的要求。也许最重要的是低延迟:游戏玩家需要无可挑剔的网络和磁盘性能。但其他因素也有助于构建和优化适合托管多个并发游戏服务器的专用服务器。
如何选择针对游戏托管提供商优化的服务器
在本文中,我们将了解什么使服务器适合托管大量游戏服务器,以及作为游戏服务器托管提供商的您在选择服务器时应该寻找什么。我们将向您展示如何选择能够为您的游戏服务器托管客户端和游戏玩家提供最佳体验的服务器。
确定游戏服务器的服务器规格
不可能就游戏服务器主机的最佳规格给出普遍的建议。哪种专用服务器适合您取决于主机支持的游戏服务器数量、提供的游戏、这些游戏使用的模组以及同时连接到服务器的玩家数量。
查看推荐的服务器要求
在选择专用服务器的规格之前,请查看您希望为用户托管的游戏的要求。这不仅可以帮助您选择专用服务器,还可以确定向用户提供哪些计划以及每个计划中包含多少服务器资源。查看您的竞争对手提供的产品以及在谷歌上搜索“游戏系统要求”将为您提供一个很好的参考。
游戏类型也会影响游戏服务器主机所需的资源。与需要更多内存、处理能力和存储的大型开放世界游戏相比,反恐精英等相对较轻的游戏需要的资源要少得多。如果您预订服务器咨询,我们的游戏服务器托管专家可以为您的用例提供有关最佳规格的指导。
如何选择针对游戏托管提供商优化的服务器
一般游戏服务器建议
我们为游戏服务器主机提供了近二十年的专用游戏服务器托管。我们总是很乐意为我们的客户提供有关其服务器的适当规格的建议,并构建具有游戏托管提供商所需的确切规格的定制专用服务器。
作为粗略指南:
对于游戏服务器提供商的专用服务器,RAM 越多越好。在游戏托管节点上看到 128GB 到 256GB 的 RAM 是很常见的。
许多游戏仍然只利用单个 CPU 内核的能力,因此 CPU 内核较少但时钟速度较高的服务器很常见。
许多 GSP 拥有大量配备较小处理器(例如 E3-1270v6)的服务器,而不是配备较少的配备较大处理器的服务器。这有助于分散性能并增加冗余。
固态硬盘 (SSD) 比传统硬盘驱动器更快地读取和写入数据。对于拥有大量资产的游戏,更快的 SSD 或 NVMe 驱动器可以显着提高游戏加载时间和性能。
确定带宽要求
专用服务器可用的带宽也会影响性能。如果托管游戏服务器超出网络接口的容量,游戏玩法可能会受到负面影响。与所有规格一样,带宽要求取决于您打算托管的游戏和玩家数量。例如,对于32 名玩家的半条命专用服务器实例,Steam建议至少 1140 kbps。对于更现代的游戏,要求可能更高。Minecraft 建议超过 9 名玩家的游戏服务器至少使用 15 Mbps。
如何选择针对游戏托管提供商优化的服务器
专用服务器配备了 1Gbps 网络接口,因此它们能够支持许多此类实例。我们在某些地点也提供 10Gbps 连接。为了让所有游戏玩家都获得最佳性能,明智的做法是使用游戏服务器的配置变量来限制每场游戏的玩家数量,并使用游戏服务器控制面板来确保服务器的资源不会过度超额使用。
实现低网络延迟
三个主要因素导致游戏玩家和运行他们所连接的游戏服务器的主机之间的网络延迟。
物理距离。没有办法克服物理学的局限性。数据在网络中传输需要时间。玩家和服务器之间的距离越远,延迟就越大。
网络距离。网络距离可以被认为是数据包到达目的地所需的跃点数。每一跳都会增加一点延迟。网络距离与物理距离有关,但并不相同。优化不佳的网络路由可能涉及大量跃点,即使物理距离很短也是如此。使用主要带宽运营商的优化良好的路由可能具有更短的网络距离,即使物理距离更大。
带宽容量。过载的网络接口将丢弃数据包并缓慢地爬行。如果服务器托管提供商试图通过不合适的网络接口塞入过多数据,则会给游戏玩家带来糟糕的体验。
在选择专用服务器主机时,游戏托管提供商应寻找与主要带宽提供商的冗余连接、靠近最大游戏玩家集群的数据中心,以及能够支持游戏服务器产生的可能有数千名玩家的网络流量的网络接口. 在 8 个数据中心提供服务器以满足 GSP 的需求。
如何选择针对游戏托管提供商优化的服务器
许多游戏服务器提供商通过在世界各地设置专用服务器来优化服务器性能。用户结帐时,他们可以选择离他们的玩家群最近的位置,并达到最高水平的性能。
优化游戏服务器操作系统
除了选择最佳的服务器位置和规格外,游戏服务器托管提供商还可以在操作系统级别优化他们的服务器。默认操作系统设置适用于一般服务器工作负载,游戏服务器主机可以通过调整一些网络和存储选项来提高性能。
这是一个复杂的话题,游戏主机可能会做出许多调整,具体取决于他们的服务器操作系统。让我们看一下针对在 Linux 上运行的游戏服务器推荐的两个网络调整。
增加 UDP 接收缓冲区大小。游戏服务器通常使用 UDP 通信,UDP 数据包缓冲区的标准配置可能会导致丢包。缓冲区大小通过 /etc/sysctl.conf 中的 rmem_default 参数配置。
忙于投票。繁忙的轮询可以通过减少数据包处理中的延迟来减少延迟,但是以增加处理器利用率为代价。在大多数发行版中,此设置在默认情况下处于关闭状态,但可以通过向 /etc/sysctl.conf 中的 busy_read 和 busy_poll 参数添加值来打开。50 是一个安全的默认值。
由于影响性能的因素太多,因此应对这些参数进行测试以确保它们能够带来更好的游戏体验。