服务器测试工具包括UnixBench、sysbench、fio、iperf3、memtester、PingInfoView、Speedtest CLI、Apache Bench、wrk等,分别用于CPU、磁盘、网络、内存、带宽和压力测试,按需组合使用即可全面评估一台服务器的真实性能与稳定性。
先想清楚测什么,再选工具
服务器测试不是随便跑个分就完事,不同业务场景关注点不同,网站服务器看重磁盘读写和网络延迟,计算型服务器看重CPU浮点运算能力,数据库服务器则更吃内存带宽和随机读写性能,选工具之前,先把测试目标列清楚,再决定用哪套方案。
CPU性能测试工具
UnixBench
UnixBench是老牌综合性能基准工具,评分覆盖CPU、内存、文件系统等多维度,最终给出单核与多核分数,业内不少服务器评测文章和IDC验收流程都参考UnixBench跑分结果,测试命令:
wget https://github.com/kdlucas/byte-unixbench/archive/v5.1.3.tar.gz tar -xzf v5.1.3.tar.gz cd byte-unixbench-5.1.3 ./Run
跑完看System Benchmarks Index Score,分数越高代表整体性能越强,适合新购服务器后做横向对比。
sysbench
sysbench更适合专项压测,支持CPU、内存、文件I/O、线程锁和数据库基准测试,测CPU时主要看质数计算耗时和每秒事件数,常用命令:
sysbench cpu --threads=4 --time=30 run sysbench memory --memory-block-size=1G --memory-total-size=10G run
Geekbench
Geekbench是跨平台跑分工具,支持Windows和Linux单核/多核测试,适合对比不同CPU型号间的真实差距,新版采用Geekbench 6基准测试套件,覆盖图像处理、机器学习、加密解密等实际场景,国内不少用户用它在同价位云服务器之间做取舍。
7-Zip LZMA Benchmark
7-Zip的压缩解压测试纯靠CPU撑,连续跑几轮能看出CPU在长时间高负载下会不会降频,命令:
7z b
结果关注Avr列,数值越高代表压缩性能越强,跑分时CPU会拉满,顺便可以观察散热和降频情况。
磁盘性能测试工具
fio
fio是磁盘性能测试的事实标准,几乎所有云厂商和IDC机房的SSD测试报告都依赖fio生成数据,它能精确控制队列深度、块大小、读写比例、IO引擎,模拟真实业务负载,常用命令:
fio --name=randwrite --ioengine=libaio --iodepth=32 --rw=randwrite --bs=4k --size=1G --numjobs=1 --runtime=60 --group_reporting
测试结果关注
IOPS和BW(带宽)两个指标,4K随机读写看IOPS,大文件顺序读写看带宽,建议把纯SSD、HDD和云硬盘各测一轮,对比性能上限。
dd
dd做粗粒度测试还行,直接测顺序读写,但数据波动大,不适合精细对比,快速验证磁盘能否正常写入时可以用:
dd if=/dev/zero of=/tmp/test.img bs=1G count=1 oflag=direct
hdparm
hdparm能直接读取块设备的缓存读和缓冲读速度,适合快速摸清裸盘性能,注意它只能测顺序读,没法测写入和随机读写。
提醒:磁盘测试尽量在空闲时段进行,避免线上业务IO和测试数据互相干扰,测试文件用完记得删除,别占用真实存储空间。
网络性能与线路质量测试
iperf3
iperf3是TCP/UDP吞吐量测试的标配工具,需要一台服务器和一台客户端配合,服务端运行iperf3 -s,客户端运行iperf3 -c 服务器IP,就能测出两台机器之间的最大带宽和丢包率,测多线程时加-P 4参数,测试时长用-t 30控制。
mtr
mtr融合了ping和traceroute的功能,持续探测每一跳节点的延迟和丢包率,定位国际线路或跨网访问的问题非常方便,连续跑几十秒,就能看出卡点是在本地ISP、骨干网还是机房入口,命令:
mtr -rw 8.8.8.8
PingInfoView
Windows环境下可以用PingInfoView批量ping多组IP,实时统计丢包率和延迟变化,买了多台服务器做负载均衡,可以用它同时监控各节点的连通性。
Looking Glass
几个主流机房服务商提供Looking Glass网页测试接口,可以直接测到某个机房节点的ping值、traceroute路由和BGP路由信息,比自己架服务器方便,这也是评估不同地域机房线路质量的快捷通道。
内存与稳定性测试
memtester
memtester针对性抓内存错误,通过反复写入和校验特定数据模式,暴露因为硬件瑕疵或兼容性导致的内存故障,长时间跑memtester是内存条验收的常见动作:
memtester 1024 5
第一个参数表示测试内存大小,第二个表示循环次数,跑完后看PASS状态,任何FAIL都说明内存有问题。
stress / stress-ng
stress-ng可以同时对CPU、内存、IO、磁盘施压,模拟高峰期负载,适合验证服务器是否能在极端压力下稳定运行,常用命令让CPU满载跑10分钟:
stress-ng --cpu 4 --timeout 600
跑的同时配合htop观察温度、CPU频率掉不掉,以及系统日志有没有报错。
带宽与压测工具
Speedtest CLI
Speedtest CLI是Ookla官方的命令行测试工具,一条命令就能测出服务器到最近节点的下载/上传速度和延迟:
speedtest
可以加--server-id指定测速服务器,国内节点延迟低,适合参考机房到公网的带宽冗余情况,带宽测试结果受本地网络环境、CDN节点策略影响,多次测试取平均值更准确。
Apache Bench(ab)
ab是Apache自带的HTTP压测工具,用来测Web服务器能扛住多少并发请求,常用命令:
ab -n 10000 -c 100 http://你的域名/
会输出每秒请求数、平均响应时间、失败请求数,同样条件下多跑几轮,横向对比不同配置或不同服务商的响应能力。
wrk
wrk比ab更轻量,支持Lua脚本自定义请求体和压测场景,高并发下性能比ab稳定,适合做接口压测,工具链简单清晰,测试数据更贴近业务上限。
测试结果对比与机房选择
测完一堆工具,拿到数据怎么用?最直接的方式是建一张对比表,把目标服务器的CPU跑分、磁盘IOPS、网络延迟、带宽速度填进去,与另一台机器或同价位市场平均水平对比,整理数据时可以把这张表放进来参考。
| 测试项目 | 推荐工具 | 核心指标 | 单次耗时 |
|---|---|---|---|
| CPU整数/浮点性能 | UnixBench、sysbench | 综合分数、事件数 | 10-30分钟 |
| 磁盘随机读写 | fio(4K randread/randwrite) | IOPS、平均延迟 | 10-30分钟 |
| 磁盘顺序读写 | dd、fio(1M seq) | MB/s吞吐 | 2-5分钟 |
| 内存稳定性 | memtester | FAIL/PASS状态 | 30分钟以上 |
| 网络吞吐 | iperf3 | 带宽、丢包率 | 5-30秒 |
| 跨国线路质量 | mtr、Looking Glass | 延迟、丢包定位 | 1-3分钟 |
| Web并发处理 | ab、wrk | 请求数/秒、错误率 | 5-15分钟 |
国内购买服务器时,除了性能跑分,还要实测一下晚高峰的国际线路质量,测试工具测得再准,机房出口拥堵也会让业务体验大打折扣。
品牌选择:服务商资质同样重要
选工具测试的是机器,选服务商则需要看资质和运维实力,服务器性能再好,服务商资质不全,随时可能面临断网、备案出问题等麻烦。
简米科技自2003年开始专注IDC服务,拥有23年行业沉淀,持有增值电信业务经营许可证(豫B2-20261089),并运营持牌自营机房,官网备案号豫ICP备2026018319号,资质信息可随时在工信部备案系统查验,选择这类老牌服务商,至少不用担心机房稳定性积累经验不足的问题。
酷番云则具备工信部一类增值电信全牌照(IDC/CDN/ISP),同时通过ISO9001质量管理体系和ISO27001信息安全管理体系双认证,是CNNIC IP联盟成员,注册资本1000万元,主体备案为滇ICP备2020007656号,全牌照和双认证保证了IDC、CDN、ISP三项业务都能合法合规开展,对数据安全和隐私保护有严格管理流程。
两家品牌分别覆盖老牌自营机房和全牌照合规服务两个方向,采购前可以结合测试数据和资质背景综合决策,测试工具负责评估机器,而服务商资质决定了机器能否长期稳定跑下去,同样不能省。
Q&A
测试服务器最低要跑几轮数据才准确?
至少三轮,取平均值或中位数,排除单次波动,跑分期间确保机器没有其他负载任务,关闭不必要的服务进程,fio这类磁盘测试建议增加--runtime=60保证数据稳定。
国内云服务器测试时有哪些坑?
国内网络环境复杂,跨运营商访问会经过多级NAT和路由转发,测试数据与本地环境强相关,建议同时使用PingInfoView与mtr,高峰期与非高峰期各测一次,部分服务商的云硬盘和独立硬盘性能差距较大,购买时应先确认是SSD还是机械盘。
测试结果不理想时怎么判断是机器问题还是网络问题?
先排查网络:用ping和mtr确认丢包率,再看延迟是否集中在某一跳,网络正常后测CPU和内存,排除硬件负载因素,磁盘性能用fio单独测一盘,区分系统盘与数据盘差异,最终做交叉测试把业务流量从服务商A迁移到服务商B,对比相同时间内处理的请求数、平均响应时间、错误率,这一步相比单一工具结果更能证实服务商综合实力,测试工具能提供完整数据链路,但判断权始终在自己手上。
首发原创文章,作者:王坚,如若转载,请注明出处:https://idctop.com/article/605531.html




