服务器对比实测评分方案
前言
此篇开启服务器对比实测评分系列文章,以腾讯云服务器 CVM S5.MEDIUM2(下称 CVM)为基准 100 分,用 Docker 运行测试程序。
网上常见的服务器评测对我意义不大,我想要更直观地知道,其他服务器相比我现在用的 CVM 可以打几分,值不值得买。我网站的高负载主要发生在上传文件后的处理,所以专项测试服务器处理文件的能力,也就是 CPU 性能和磁盘 I/O 的具像化表现。
测试方案
我将测试指标简化为处理文件的执行时长,耗时越短代表性能越好。
测试步骤
- 准备不同后缀、不同大小的图片、音频、视频文件
- 计算 1 个文件完成 1 种处理的耗时,记为 1 次测试
- 达到 10 次测试后用 Z-Score 方法剔除异常数据
- 重复上述步骤直至完成 10 次有效测试,取平均值
文件权重
参照我网站的实际情况,当前有 4611 张图片、1877 个短片、17 个语音,故设图片、视频、音频的权重分别为 70.88%、28.85%、0.27%。
评分算法
类评分
设 CVM 某项处理耗时为 t1,测试服务器耗时为 t2,则测试服务器该项得分为 100 * (1 / t2) / (1 / t1)。
取同类项平均值记为小类得分,相关小类平均值为类得分。
总评分
设测试服务器图片、音频、视频处理的类评分为 s1、s2、s3,则测试服务器总得分为 0.7088 * s1 + 0.2885 * s2 + 0.0027 * s3。
测试环境
Docker 部署
为统一软件环境,并在特定情况下限制 CPU 与内存(高配服务器模拟与 CVM 一致的规格),故用 Docker 来部署测试。
docker run -d --name server-testing --memory="2048m" --cpuset-cpus="0,1" --cpus="2.0" -v /docker/server_testing/result:/server_testing/result dujunio/server-testing
生成结果在 result
目录。
软件环境(容器内)
- PHP 8.2.18(含 php8.2-imagick 3.7.0-4)
- FFmpeg 5.1.5
- jpegoptim 1.4.7
测试文件
图片文件
编号 | 类型 | 大小 | 尺寸 |
---|---|---|---|
111 | JPG | 449K | 1920 × 1080 |
112 | JPG | 1.9M | 3000 × 2000 |
121 | PNG | 750K | 1024 × 683 |
122 | PNG | 3.8M | 1920 × 1080 |
131 | BMP | 1.5M | 960 × 540 |
132 | BMP | 6.0M | 1920 × 1080 |
141 | GIF | 417K | 400 × 226(13 帧) |
142 | GIF | 1.8M | 202 × 513(66 帧) |
音频文件
编号 | 类型 | 大小 | 位速率 | 采样速率 | 时长 |
---|---|---|---|---|---|
211 | MP3 | 137K | 64kbps | 48.0kHz | 0:17 |
212 | MP3 | 939K | 64kbps | 44.1kHz | 2:00 |
213 | MP3 | 5.2M | 128kbps | 44.1kHz | 5:37 |
视频文件
编号 | 类型 | 大小 | 格式 | 分辨率 | 时长 |
---|---|---|---|---|---|
311 | MP4 | 2.4M | H.264 | 576P | 0:15 |
312 | MP4 | 9.4M | HEVC | 480P | 0:22 |
321 | MOV | 7.7M | HEVC | 720P | 0:05 |
322 | MOV | 29M | H.264 | 1080P | 0:16 |
基准服务器
本站所运行的服务器,腾讯云 CVM S5.MEDIUM2,2 核 2GB 1Mbps。
CPU 信息 | |
---|---|
Model name | Intel(R) Xeon(R) Platinum 8255C CPU @ 2.50GHz |
Vendor ID | GenuineIntel |
Architecture | x86_64 |
CPU op-mode(s) | 32-bit, 64-bit |
Address sizes | 46 bits physical, 48 bits virtual |
CPU(s) | 2 |
CPU family | 6 |
Model | 85 |
Thread(s) per core | 1 |
Core(s) per socket | 2 |
Socket(s) | 1 |
Stepping | 5 |
BogoMIPS | 4999.99 |
L1d cache | 64 KiB (2 instances) |
L1i cache | 64 KiB (2 instances) |
L2 cache | 8 MiB (2 instances) |
L3 cache | 35.8 MiB (1 instance) |
Hypervisor vendor | KVM |
Virtualization type | full |
基准性能
图片处理测试结果
特别说明:BMP 额外有预先转码成 JPG 的开销。
图片压缩
编号 | 文件 | 耗时 |
---|---|---|
111 | JPG 449K | 0.0466s |
112 | JPG 1.9M | 0.1676s |
121 | PNG 750K | 0.4122s |
122 | PNG 3.8M | 0.4824s |
131 | BMP 1.5M | 0.0130s |
132 | BMP 6.0M | 0.0393s |
生成缩略图
编号 | 文件 | 耗时 |
---|---|---|
111 | JPG 449K | 0.0360s |
112 | JPG 1.9M | 0.1296s |
121 | PNG 750K | 0.0560s |
122 | PNG 3.8M | 0.0864s |
131 | BMP 1.5M | 0.0203s |
132 | BMP 6.0M | 0.0262s |
141 | GIF 417K | 0.0672s |
142 | GIF 1.8M | 0.2773s |
生成 WebP
编号 | 文件 | 耗时 |
---|---|---|
111 | JPG 449K | 0.3062s |
112 | JPG 1.9M | 1.0643s |
121 | PNG 750K | 0.1008s |
122 | PNG 3.8M | 0.3095s |
131 | BMP 1.5M | 0.0545s |
132 | BMP 6.0M | 0.2096s |
141 | GIF 417K | 0.2887s |
142 | GIF 1.8M | 0.6153s |
音频处理测试结果
生成 OGG
编号 | 文件 | 耗时 |
---|---|---|
211 | MP3 137K | 0.2928s |
212 | MP3 939K | 1.1947s |
213 | MP3 5.2M | 6.4211s |
视频处理测试结果
特别说明:MOV 额外有预先转码成 MP4 的开销。
视频压缩
编号 | 文件 | 耗时 |
---|---|---|
311 | MP4 2.4M | 12.7703s |
312 | MP4 9.4M | 0.0917s |
321 | MOV 7.7M | 9.4417s |
322 | MOV 29M | 29.2054s |
生成缩略图
编号 | 文件 | 耗时 |
---|---|---|
311 | MP4 2.4M | 0.3297s |
312 | MP4 9.4M | 0.2952s |
321 | MOV 7.7M | 3.6489s |
322 | MOV 29M | 11.1678s |
生成 WebM
编号 | 文件 | 耗时 |
---|---|---|
311 | MP4 2.4M | 79.7153s |
312 | MP4 9.4M | 72.3739s |
321 | MOV 7.7M | 71.5808s |
322 | MOV 29M | 317.8199s |
结果呈现
类评分和总评分以分数的形式呈现,单个测试结果以如下符号呈现:
性能相较 CVM | 符号 |
---|---|
> 200% | ✓✓✓✓✓ |
169% ~ 200% | ✓✓✓✓ |
142% ~ 168% | ✓✓✓ |
119% ~ 141% | ✓✓ |
100% ~ 118% | ✓ |
85% ~ 99% | ✗ |
71% ~ 84% | ✗✗ |
60% ~ 70% | ✗✗✗ |
50% ~ 59% | ✗✗✗✗ |
< 50% | ✗✗✗✗✗ |
标签: 服务器评分