文章

新机器开箱先跑一次 YABS:先看 4k 那一行,再决定留不留

静水流深 昨天 13:12 · 1,398 字 · 约 4 分钟 · 23 次阅读
我发布了文章:《新机器开箱先跑一次 YABS:先看 4k 那一行,再决定留不留》

开箱这几天是唯一的窗口期

机器一通,多数人的第一反应是赶紧装面板、迁站、跑起来。但我更习惯先花十几分钟做一件事:跑一次基准测试。理由很实在——退款窗口在这几天,工单里那句"我测过了"的分量也在这几天。等你在上面跑了半个月业务再说磁盘慢,商家只会回你一句使用中存在波动。

更重要的是,两台纸面配置一模一样的便宜 VPS,体感差在哪?很少差在 CPU,绝大多数差在磁盘和一个说不清的"偶尔卡一下"。

一行命令,什么都不用装

curl -sL yabs.sh | bash

YABS 的设计就是不给被测机器添麻烦:不需要 root 权限,也不需要你事先装任何东西,脚本会自己带上 fio、iperf3 和 Geekbench 的预编译二进制。系统里已经装了 fio 或 iperf3 的话,它会优先用本地包。

一个小提醒:默认它会跑一大串 iperf 网络测试,每个测速点会把端口打满约 20 秒(上下行各 10 秒)。小带宽机器、NAT VPS 或者按流量计费的机器,记得加 -r 减少测速点,或者 -i 直接跳过网络测试。别为了验收一台机器,先把自己测出一条流量告警。

结果出来先看哪一行

fio 那一段有四档块大小:4k、64k、512k、1m,全是随机读写各占一半。别被 1m 那行的大数字晃住——那只能说明搬大文件快。真决定你这台机器跑 WordPress、跑数据库、跑 CI 发布体感的,是 4k 那一行。

几条我自己的判断线,不是什么行业标准,供你对照:

  • 4k 混合读写能到几十 MB/s,日常建站、小数据库、自动化脚本都够用,别再纠结。
  • 只有个位数 MB/s 的机器,拿来放静态页、跑监控探针还行,放数据库是给自己找罪受。
  • 同一商家、同一套餐,两次跑分差出一大截的,说明这台母机负载不稳定,换节点或开工单,别硬扛。

想抓"偶尔卡一下",得单独看延迟

平均速度好看但用起来顿挫,是便宜机器最常见的毛病。这时候别再盯 YABS 的混合读写,用 fio 单独跑一个 4k 随机读,让它输出延迟分位数:

fio --name=4k-randread --filename=./fio-test --size=1G --bs=4k \
    --rw=randread --ioengine=libaio --iodepth=1 --direct=1 \
    --runtime=60 --time_based --lat_percentiles=1 --group_reporting

看 p99 那一档,比看平均诚实得多:p50 都在 1 毫秒以内、p99 却冲到几十毫秒,就是典型的"大部分时候没问题,忙起来就卡"。fio 同样不需要 root(除非你要直接测裸设备、锁内存之类的),反复测就把参数写进 job 文件,下次一模一样。

把结果存下来,别测完就扔

YABS 有两个参数值得记住:-w 文件名 把结果写成 JSON,-s 网址 把结果提交到公共跑分库。现在能直接接收的有 YABSdb、VPSBenchmarks、serverlist.dev 几家,ServerVerify 需要注册后提交。

我建议至少留一份自己的基线文件:机器到手跑一次,续费涨价前再跑一次,准备迁移前再跑一次。三次数字摊在一起,商家有没有在悄悄缩水,一眼看得出来。想跑新一点的 Geekbench 7,加 -7(默认仍是 Geekbench 6)。

便宜和值得买是两件事

便宜机器完全能买,但不能不验。上面这套动作加起来不到二十分钟,换来的是"这台机器到底适合放什么"的确定答案,而不是三个月后一次说不清的卡顿。

最后一句边界:跑分只说明算力、磁盘和网络吞吐,跟线路质量是两回事,到中国大陆的访问情况得另行实测,测不了就写未测试。另外,本站没有在自己的机器上跑过本文这套命令,命令和行为依据的是 YABS 与 fio 两个上游项目的说明。

登录 后参与评论

还没有人评论,来抢沙发