搜索 Unity

如何用Multiplay扩展服务器规模

2021年10月14日 类别 游戏 | 9 分 阅读
screenshot of the product
screenshot of the product

你能否准确预测自己的多人游戏能吸引多少玩家?准确地预测玩家数量对游戏的运营有着重要意义,你需要根据玩家数来确定服务器负荷,维持玩家的满意度和游戏链接的稳定。但仅靠预测不仅不可靠的,有时还会浪费大量的时间。 

作为Unity Multiplayer Services产品之一的Multiplay是行业领先的服务器托管方案,也是全球多款高质量、高人气多人游戏的联网服务合作伙伴。采用了Multiplay的工作室有RespawnMediatonicHi-RezTeam17等, 知名游戏包括《Apex Legends》、《 Rogue Company》、《Fall Guys》和《Overcooked! All You Can Eat》。他们都采用了Unity的技术来降低服务器成本,并为玩家提供高质量的体验。

这里,我们将简单介绍下客户们青睐Multiplay的原因:服务器扩展技术。

服务器上的难题

在玩家数逼近服务器最大容量时,我们很难预测玩家数究竟可以增长到什么程度。当游戏遇到了一次曝光机会:比如某位具有影响力的主播开始游玩,或者新赛季的开放引起了新的游戏兴趣,游戏就有可能在新玩家的口口相传出现爆发式增长。 

这时,如果玩家在登录游戏时遇到了问题,他们通常不再会向朋友们推荐“这款超好玩”的游戏,而会选择立即退出、和别人诉说这次糟糕的体验,并劝退其他玩家。 

另一方面,如果提前就配置过多的服务器,很有可能会导致预算吃紧,并且多余的服务器可能会长期空转,也可能仍旧无法满足高峰期的联网需求。 

服务器自动扩展技术是一种自动化的服务器负荷处理方法,可让你不必再估测需要的服务器数量,减少预测时间,节省资金。它可在需要的时候投入使用额外的服务器,在不需要的时候减少服务器。

自动扩展的关键优势在于:

  • 知道何时扩大和缩小服务器规模
  • 知道在何处部署游戏服务器
  • 能解决成本和/或性能的问题

技术 + 专业知识 = Multiplay扩展

即便游戏的玩家群体已经足够稳定,玩家数也不会永远固定或呈线性增长,更常见的是在几天、几周或几个月期间上下波动。而Multiplay可以根据实时数据自动计算出服务器的扩展时机。Unity深刻了解游戏在各个时间点的服务器需求,并且我们的系统专为游戏打造。

首先,我们来了解下Multiplay云端的运作原理,整个系统采用的是哪种服务器。拓展时系统会优先分配“随时待机”的服务器,尽量缩短拓展时间。 

当玩家数超出预计时,我们会立即接入云端来保证连接流畅,避免出现无法登录或排队等待的情况,应对最为严峻的服务器超载问题。云端主机可根据需要随时创建或销毁,当云端服务器上的游戏场次结束时,系统会立即关停主机,避免产生额外费用。我们希望帮助开发者们节省资源,“把好钢使在刀刃上”,专注于优化玩家的体验。

这种“随用随开”的方式既可以保证游戏性能,又可以降低服务器使用成本。

Multiplay之所以能成为全球顶级工作室的联网备选方案之一,就是因为客户们不必提前准备大量的缓冲服务器,可以依靠Multiplay来处理游戏高峰。 

那系统又是怎样得知接入云端的时机呢?

做足准备

首先,你需要为游戏设定能满足需求的服务器数量下限,搞清预期中在线玩家数量最少是多少。这一数值并非一成不变,我们可在随后进行调整。

而本文中讨论的是服务器在扩容、缩减时的情形,即Multiplay在玩家数超出服务器上限时为维持游戏流畅所采取的一系列措施。

另一个需要指明的数值是游戏缓冲区的服务器数量,待机着的缓冲服务器会在游戏高峰时段投入使用。当任意数量的缓冲服务器被占用,系统会投入新服务器来维持住缓冲区大小,让玩家一直有一定数量的服务器可供连接。 

自动扩展技术还能自动检测出空闲的服务器负荷,并根据服务器数量下限和缓冲区大小进行优化。所有费用皆根据实际服务使用情况计算,让客户能减少多余的成本,又不会冒失去玩家和游戏吸引力的风险。

red and green boxes to illustrate buffering in this context

有了这个功能,外加上可自定义的缓冲区大小,你就能灵活地调整服务器的准备水平。如果你有新内容要发布,我们可以在服务器预留更多的空余。如果玩家数量即将出现季节性下滑,我们也可以把缓冲服务器数量调回较低水平。你可以省下更多的脑细胞来思考真正重要的事情,不必再三地预估玩家数量,这也是众多大牌工作室都使用Multiplay的一个重要原因。 

地区性调整

在正确的位置部署服务器也是提高游戏性能和玩家满意度的关键。Multiplay在全球200多个数据中心建立了一张服务器网络,保证任何地点的玩家都有最好的联网体验。整个系统在建立之初就充分考虑到了游戏的特殊需要,能帮助用户快捷地搭建起最合适的服务器配置。 

如果想在当地建立易于扩展的服务器设施,你可以创建“地区性集群”。一个“地区性集群”是指处在相同地区的服务器组,它可以确保所有新增、移除的服务器都处在一个地区。所有的服务器扩展过程都将在同一个区域内完成,让新玩家能顺利运行各种服务(语音通讯、线上聚会、游戏服务器)。

Colored boxes illustrating the copy
Colored boxes illustrating the copy

迄今为止,已经有多款多人游戏在Unity多人游戏服务器技术的帮助下成功上线。 

如果你正在开发多人游戏,并希望提供一流的在线游戏体验,请联系我们来详细了解Multiplay

2021年10月14日 类别 游戏 | 9 分 阅读