VPS超售可以说是行业默认的玩法,完全避免并不现实,但超售程度有轻重之分,判断方法就是实测CPU跑分和磁盘IO,测试结果能直接告诉你这台机器被超售到了什么程度。
很多人买VPS,尤其是低价VPS,到手之后感觉卡顿、CPU跑分惨淡,多半就是踩了超售严重的坑,这篇文章用最直接的方式,教你从技术层面判断一台VPS的超售情况。
超售和超开,先分清两个概念
在聊测试之前,先把概念捋清楚,行业里常说的超售,准确地讲分为两件事:超开和超用。
超开指物理机配置的CPU核心数、内存总量,加起来比实际物理资源多,比如一台物理机有16核CPU、128G内存,商家在上面开了40台2核4G的VPS,那么这40台VPS的总资源需求是80核160G,明显超过了物理机真实能力,这种属于超开,也是超售的核心来源。
超用则是物理机配置本身没超,但邻居的负载非常高,比如有人跑挖矿脚本、高并发采集,瞬间把物理机的CPU跑满,你的VPS就会跟着遭殃,这种情况检测起来更隐蔽,但跑分时同样会暴露。
行业共识认为,适度超售是IDC行业维持低价运营的必要手段,否则一台物理机只开几台VPS,月付几十块根本覆盖不了成本,关键不是超不超,而是超多少、有没有底线。
VPS超售怎么看?先看CPU跑分再测磁盘IO
测试超售没有单一指标,需要从CPU、磁盘、内存、带宽四个维度交叉验证,如果你手里已经有一台VPS,按下面的顺序来测,基本能摸清它的真实底细。
CPU测试命令:unixbench、sysbench与邻居数量判断
CPU是超售最直接的受影响点,物理机CPU核心是固定的,超开比例越高,分给你的计算时间片就越少。
第一步,查看vCPU信息。
lscpu
执行后看CPU(s)和Core(s) per socket字段,如果商家承诺2核,但这里显示的CPU(s)是2,Core(s) per socket也是2,说明分配正常,如果显示CPU(s)是1但Thread(s) per core是2,那可能是共享核心,这种超售比例通常偏高。
第二步,跑UnixBench单核分数。
UnixBench是目前行业内比较通用的CPU性能测试工具,虽然有些年头,但参考价值依然在线,安装并跑一轮单核测试:
wget https://github.com/kdlucas/byte-unixbench/archive/refs/heads/master.zip unzip master.zip cd byte-unixbench-master ./Run
跑完会给出一个System Benchmarks Index Score分数,参照基准:一颗主流的E5-2680 v4物理核心,单核分数大约在700-900之间,如果你的VPS单核跑分在500-700,说明超售控制得还行,物理CPU不算太老,邻居也不至于太吵,如果单核跑分低于300,基本可以断定超售严重,或者物理机CPU型号太老。
第三步,留意邻居数量。
超售严重与否,另一个直接体现是邻居的数量,用htop或者top直接观察,如果你的VPS明明只有2核,但htop里显示了16个甚至更多CPU核心,说明你所在的物理机上,这台服务器被开了非常多虚拟机,这种场景下,高峰期性能被摊薄是必然的。
磁盘IO:dd命令实测读写速度
磁盘是超售的另一个重灾区,很多廉价VPS使用的是HDD机械硬盘,或基于HDD的OpenVZ架构,再加上超售,IOPS(每秒读写次数)会低到让人怀疑人生。
基础测试用dd命令快速判断:
dd if=/dev/zero of=testfile bs=64k count=4k conv=fdatasync
这个命令会写入256MB的文件,走的是缓存还是真实磁盘,结果差异很大。SSD硬盘的VPS,写入速度通常在300MB/s以上;HDD优化的VPS,通常也有100-150MB/s,如果这个数字低于80MB/s,那这台机器大概率是HDD阵列里的普通盘,没有做SSD缓存。
进一步测随机读写,用fio:
fio --randrepeat=1 --ioengine=libaio --direct=1 --gtod_reduce=1 --name=test --bs=4k --iodepth=64 --size=4G --readwrite=randrw --rwmixread=75
重点看read和write的IOPS值。SSD VPS的4K随机读IOPS通常能达到1万以上,好的NVMe甚至能到5万以上,如果4K随机读IOPS只有几百到一两千,这就是典型的HDD超售盘,放静态页面也许勉强,但跑数据库或高并发应用会非常吃力。
VPS测试超售需要多久?脚本实测与判断标准
如果你不想手动一条条命令敲,也可以用现成的综合检测脚本,目前行业内使用较多的有bench.sh和LemonBench,这两个脚本会自动完成CPU跑分、磁盘IO、带宽测速,并汇总输出。
运行方式:
wget -qO- bench.sh | bash
或者:
curl -fsL https://ilemonra.in/LemonBench/script/LemonBench.sh | bash -s -- --full
脚本运行时间大约5到15分钟,期间会跑UnixBench、dd测试、Speedtest测速,最终生成报告,这类脚本适合横向对比多台VPS,比如你纠结于美西VPS和香港VPS哪个性能更好,跑一次脚本,看分数差距,基本心里有数。
内存与带宽怎么测
内存方面,超售VPS常出现的问题是内存写入速度奇慢,甚至直接到Swap,用free -h观察Swap占用情况,如果你的VPS没跑多少应用,但Swap已经用了不少,说明物理内存超售已经触发到了交换分区,测试内存带宽可以用sysbench:
sysbench memory --memory-block-size=1M --memory-total-size=10G run
重点看传输速率(MiB/sec)。DDR4代内存的VPS,传输速率通常在几千MiB/s级别,如果只有几百MiB/s,要么是物理机内存本身比较老,要么是超售导致内存带宽被争抢。
带宽测试方面,Speedtest测速反映的只是你到测速节点的速度,没法完全代表VPS到中国线路的真实质量,更实际的测法是直接在VPS上拉取国内服务器的文件,比如用wget从华为云或酷番云的镜像站下载一个200MB的测试包,观察下载速度。晚高峰(20:00-23:00)测试最准,这个时间段能真实反映线路拥堵程度和商家是否限制了带宽。
不同价位VPS的超售表现与跑分参考
判断超售是否“严重”,还要结合你付的钱来看,拿VPS市场的主流价位来做个参考对比:
| VPS类型 | 常见价格区间 | 超售典型表现 | 跑分参考(UnixBench单核) |
|---|---|---|---|
| 低价美西VPS | 年付50-150元 | 邻居多,晚高峰CPU争抢明显 | 200-400 |
| 中端香港/日本VPS | 月付20-60元 | CPU分配偏紧但IO尚可 | 400-600 |
| 高端独享型VPS | 月付100元以上 | 资源基本独立,超售比例极低 | 700以上 |
| 商家自营云服务器 | 月付几十到几百 | 超售控制严格,有性能基线保障 | 600-900 |
这个表是按普遍市场情况整理的,不针对特定商家,核心结论是:低价买不到高性能,这是市场规律,但低价和超售之间并不是等号,有些商家虽然价格低,但超售控制一直比较克制,通过规模化压低成本,这种是值得选的,而有些商家一台物理机开几十台VPS,高峰期CPU和IO双双爆表,这种就是典型的超售无底线。
判断商家是否有底线,一个简单的办法是看同价格档位的用户评价,如果某家VPS的差评集中在“晚上卡”“CPU爆炸”“IO掉速”,那基本可以断定超售严重,如果差评多是“线路不稳”“客服响应慢”这类问题,说明超售表现起码在可接受范围内。
超售测试完成后,如何判断要不要换
跑完测试后,对照以下场景做个判断:
- 单核跑分低于300,日常使用只是搭个Web服务器,偶尔发布文章,影响不大,勉强能忍。
- 单核跑分低于200,4K随机读IOPS低于1000,这台机器做任何正经事都会卡顿,建议直接提工单退款或换商家。
- 单核跑分在400-600之间,IO正常,但每月总有那么一两次邻居吵闹导致CPU飙高,这种属于中签,多数情况下忍一忍就过去了。
- 跑分正常但晚高峰带宽骤降,从50Mbps掉到5Mbps以下,那是带宽超售的表现,和应用性能无关,换个线路类型往往就能解决。
一句话总结:测试超售的最终目的是判断这台VPS是否匹配你付的价格,跑分只是参考,真正重要的是稳定性和一致性,今天跑出800分,明天晚高峰掉到200分,这样的VPS再便宜也不值得长期持有。
Q&A:VPS超售测试与判断常见问题
问:VPS超售测试命令哪个准确,是UnixBench还是LemonBench脚本?
没有哪个命令能做到100%准确,测试结果都反映的是“当前时刻”的性能表现,UnixBench侧重CPU整数运算能力,LemonBench这类脚本是综合测试,会同时覆盖CPU、磁盘、带宽,建议先用LemonBench跑一轮总体摸底,再用UnixBench单独验证CPU表现,如果两次结果差异不大,基本能反映这台机器的大致水平。
问:为什么我的VPS刚买时跑分正常,过了一两个月就变慢了?
超售严重的VPS,性能会随着用户数量增长逐步下滑,商家刚开新物理机时,用户少,资源充裕,跑分自然好看,随着销售量上升,同一台物理机上的VPS越来越多,单个VPS分到的CPU时间片和IO配额被不断稀释,这类情况占相当比例,特点是每隔一段时间测试分数就会降一截,遇到这种可以备份数据后提工单要求迁移物理机,但效果有限;如果性能下滑导致业务受影响,考虑更换不超售或超售比例更低的商家是更实际的选择。
首发原创文章,作者:王坚,如若转载,请注明出处:https://idctop.com/article/661730.html




