用阿里云 Palworld 服务器部署自己的服务

发表于 更新于

前言

随着最近《幻兽帕鲁》游戏的爆火,不少云服务器商也推出了一些相关活动。据说阿里云的 16GB 内存服务器只用几十块,抱着试试的态度我也是弄了一台玩玩。

更新后续:此服务器优惠到期后续费需要 132.6 元每月(疑似仍在某种优惠中),并不划算。不建议继续使用。如果临终到期,请导出自己的数据迁移到其它地方。

购买

活动页面可以看到各个选配,我购买的是 4 核/16G 的款,三个月共计 96 元。

看到这价格的第一眼我有些不好的预感。我有想过它会不会只是提供一个 Palworld 服务,也就是部署一个进程而已。因为这价格实在太低了。

换掉系统

创建完成以后,默认会在一个叫「计算巢管理控制台」的页面。这个页面可以修改一些 Palworld 服务端配置,但是基本看不到关于服务器的信息。此时我还不确定这到底只是一个 Palworld 进程,还是完整的服务器环境。直到我尝试 SSH 登入成功,才确定这是一台真服务器。

进入 ECS 控制台,确实可以看到相关实例。进入实例列表页面,在操作里选择「停止实例」。进入该实例的详情页面,在「操作系统」一栏选择「更换」。换成其它的例如 Debian 12 或 Ubuntu 22.04。

因为我不需要保留任何数据,毕竟这是刚创建的服务器。如果你在上面有游戏存档,请先导出并确定存档无损坏再进行此操作。

测试性能

使用 sysbench 进行基本的 CPU 多核 10 秒测试,结果如下:

sysbench 1.0.20 (using system LuaJIT 2.1.0-beta3)

Running the test with following options:
Number of threads: 4
Initializing random number generator from current time


Prime numbers limit: 20000

Initializing worker threads...

Threads started!

CPU speed:
    events per second:  1331.54

General statistics:
    total time:                          10.0025s
    total number of events:              13321

Latency (ms):
         min:                                    2.79
         avg:                                    3.00
         max:                                   12.45
         95th percentile:                        3.07
         sum:                                40000.10

Threads fairness:
    events (avg/stddev):           3330.2500/6.61
    execution time (avg/stddev):   10.0000/0.00

拿出一台在我个人的服务器中算中低性能的 4 核服务器做对比,它的结果如下:

sysbench 1.0.20 (using system LuaJIT 2.1.0-beta3)

Running the test with following options:
Number of threads: 4
Initializing random number generator from current time


Prime numbers limit: 20000

Initializing worker threads...

Threads started!

CPU speed:
    events per second:  2620.51

General statistics:
    total time:                          10.0194s
    total number of events:              26257

Latency (ms):
         min:                                    0.72
         avg:                                    1.52
         max:                                   66.30
         95th percentile:                        0.84
         sum:                                40008.21

Threads fairness:
    events (avg/stddev):           6564.2500/80.09
    execution time (avg/stddev):   10.0021/0.02

阿里云的服务器性能大约只有我这一台的 1/2(可能还不到)。性能较差。我的这台服务器是 IONOS 上的,它负责部分简单项目的 CI 工作。我还有比它性能强不少的服务器,对比起来差距只会越来越大也就没必要了。

持续测试

由于云服务器是基于虚拟化技术(说直白点就是虚拟机),光看硬件是毫无意义的。短期测试意义也不大,因为虚拟机之间可以共享算力,可以用积分算法来分配资源。常见的共享核心的云服务器,如果密集计算时间过长,会出现明显的算力限制,因为积分被消耗光了。对于这类服务器,通常只允许短期的峰值计算,长期会极不稳定。

为了测试阿里云的服务器是否有类似策略来限制算力,我进行了时长两个小时 sysbench 的 CPU 跑分:

sysbench 1.0.20 (using system LuaJIT 2.1.0-beta3)

Running the test with following options:
Number of threads: 4
Initializing random number generator from current time


Prime numbers limit: 20000

Initializing worker threads...

Threads started!

CPU speed:
    events per second:  1303.67

General statistics:
    total time:                          7200.0029s
    total number of events:              9386439

Latency (ms):
         min:                                    2.40
         avg:                                    3.07
         max:                                   52.89
         95th percentile:                        3.07
         sum:                             28795635.53

Threads fairness:
    events (avg/stddev):           2346609.7500/2040.50
    execution time (avg/stddev):   7198.9089/0.01

可以发现在长期(此处是 2 个小时)满负载的情况下,性能没有下降(单核都是 1300 分左右)。所以基本可以认为阿里云的帕鲁服务器并非共享核心,也没有类似积分算法的资源分配。它虽然性能较低,但还是相对可靠的。

部署我的服务

在阿里云的服务器上,我部署了自己的 Palworld 服务端。因为我自己的服务端管理程序可以做到更多事情,包括各种复杂的远程控制,所以我完全摒弃阿里云提供的那一套帕鲁配置。

我制作了一个开源的镜像,但我还没有公开远程控制相关的部分。参考此文部署我的镜像。

结论

我目前没有长期的维护 Palworld 服务器的经验,我不确定这个算力能应付几个人游戏,能达到多高的 Server FPS。不过以如此低廉的价格,得到一台真 4 核/16G 的服务器当然是非常划算的。

即使是普遍便宜很多的国外云服务器商家,也远远达不到如此优惠的程度。就是 OpenVZ 虚拟化的廉价“容器”服务器都做不到。

我猜测这可能只是吸引新用户的手段,续费或者活动期限过了以后价格应该会上涨,按照国内的定价会相当高。但仅这三个月而言,算是几乎白捡的。到时候玩家们可以寻找新的廉价方案。

作者头像 一点点入门知识 打赏作者
本文由作者按照 CC BY 4.0 进行授权
分享:

相关文章