10/15 款服务器配置有货即时交付免安装费

指南阅读约 7 分钟

独立服务器与 VPS 对比:什么情况下裸金属更划算

“吵闹邻居”、CPU 窃取时间、NVMe I/O 与带宽计费:VPS 和独立服务器究竟差在哪里,外加一个按线程比较任意报价的公式。

作者:DediJet 团队

本文目录

VPS 和独立服务器可以运行同样的 Linux 镜像和同样的应用。区别在于底层:是共享宿主机上分出的一小块,还是整台机器。对于规模小、负载忽高忽低的工作负载,一小块往往就是正确的选择。而对于全天候高负荷运行的工作负载,裸金属通常在性能可预测性和单位算力价格上更胜一筹。下面教您判断自己属于哪种情况。

您租到的究竟是什么

VPS(虚拟专用服务器)就是一台虚拟机。KVM 等虚拟化管理程序(hypervisor)在一台物理宿主机上运行多台虚拟机,并把宿主机的 CPU 线程、内存、磁盘和网络分配给它们。有些套餐会为您预留硬件线程;但很多套餐会超售:卖出的 vCPU 比宿主机的线程还多,赌的是所有租户不会同时忙起来。

独立服务器则是物理机本身。每个核心、每 GB 内存、NVMe 硬盘和网络端口都归您所有;除非您自己安装,否则操作系统之下没有任何虚拟化管理程序。

“吵闹邻居”与 CPU 窃取时间

在共享宿主机上,每个 vCPU 都是一个线程,由虚拟化管理程序与其他所有租户的线程一起调度。当其他租户繁忙时,您的 vCPU 即使已经准备就绪,也可能仍需等待。Linux 将这段等待报告为窃取时间(steal time):

Shell
top -bn1 | head -n 5
vmstat 1 5

在 top 中,窃取时间是 %Cpu(s) 行的最后一个字段;在 vmstat 中,则是 st 列。在这个示例中,有 7.6% 的 CPU 时间被窃取:

输出
%Cpu(s): 41.2 us,  3.0 sy,  0.0 ni, 47.5 id,  0.3 wa,  0.0 hi,  0.4 si,  7.6 st

st 表示您的虚拟 CPU 想要运行、而虚拟化管理程序却在为其他租户服务的时间占比。短暂的峰值很常见;但如果应用繁忙时窃取时间一直居高不下,就意味着您花钱买的 vCPU 正在排队等待。在可突发(burstable)套餐上,CPU 积分耗尽后被限流,看起来也是同样的现象。

窃取时间只是看得见的那部分。即使是独享 vCPU,租户之间仍共享 L3 缓存、内存带宽,而且往往还共享存储和网络路径,因此邻居的批处理任务仍可能让您的响应时间出现抖动。在裸金属上,st 始终为零:您的系统之下根本没有虚拟化管理程序。

磁盘 I/O:独享 NVMe,无需排队

VPS 的存储通常是分给您的一部分本地 NVMe 硬盘,或者是网络块存储;后者的每次读写都要穿过网络到达存储集群。两者通常都按卷设有性能上限,而网络存储还会给每次 I/O 增加一个往返。对于数据库、搜索索引和游戏世界来说,单次操作的延迟比宣传的吞吐量更重要:请关注 top 中的 wa(I/O 等待),以及 iostat -x 1 的 r_await 和 w_await 列。

在独立服务器上,NVMe 硬盘直接挂在本机的 PCIe 总线上,完整的队列深度只为您的工作负载服务。每款 DediJet 配置都包含 NVMe,双盘服务器默认配置软件 RAID 1。与其相信规格表,不如亲自实测;下面这次 fio 测试会在一个临时文件上进行 4 KB 随机读取:

Shell
apt install -y fio
fio --name=randread --filename=/root/fio.test --size=4G --rw=randread --bs=4k --iodepth=32 --numjobs=4 --ioengine=libaio --direct=1 --runtime=60 --time_based --group_reporting
rm /root/fio.test

也在您现在的 VPS 上跑一遍,然后比较两份输出中的 IOPS 和 clat percentiles(完成延迟)。

带宽:按 GB 计费的出站流量,还是不限流量端口

云平台和许多 VPS 套餐都会对出站流量计量收费:流出的每一 GB 都要付费,有时会先扣除套餐内含的额度。费用随流量线性增长:

公式
monthly egress cost = GB sent per month × price per GB

而配备不限流量端口的独立服务器恰恰相反:您为端口速率付费,流量不计量。每款 DediJet 配置都包含按端口速率(1 Gbps 或 10 Gbps)全天候不限流量的带宽,只需遵守《可接受使用政策》。一个 1 Gbps 端口满速运行 30 天,每个方向约可传输 324 TB。

要找到两种模式的分界点,用服务器的月付价格除以报价中的每 GB 单价即可。以 Ryzen 7 9700X 为例,149 ÷ 单价得出的 GB 数就是临界点:超过这个量,光是出站流量费就比整台服务器还贵。我们的不限流量指南详细演算了这些数字。

root 权限、IPMI 与硬件本身

两种方案都能让您在操作系统内获得 root 权限。区别在于操作系统之外的部分:

  • 带外访问。DediJet 服务器配备 IPMI/KVM-over-IP:基于浏览器的控制台、电源控制,以及可挂载您自己 ISO 的虚拟介质。即使一条防火墙规则或一次内核更新把您锁在门外,您依然有屏幕和键盘可用。VPS 的控制台只能连到虚拟机,永远碰不到硬件。
  • 自己的虚拟化平台。一键安装 Proxmox VE,或通过 ISO 安装 VMware ESXi(需自备许可证)、TrueNAS 或 NixOS,无需嵌套虚拟化即可运行虚拟机和容器;而许多 VPS 套餐要么禁用嵌套虚拟化,要么让它慢下来。
  • 真实的硬件数据。SMART 与 NVMe 健康状态、CPU 拓扑与频率表现、网卡设置:您看到的是真实设备,而不是虚拟设备。

代价是:服务器为非托管型,您就是管理员。我们的入门步骤和 IPMI/KVM 控制台指南涵盖了这些基础知识。

算算成本:每核与每 GB 内存的价格

公平的比较方法,是用月付价格除以您得到的资源。下面是三款 DediJet 服务器(月付价格,不含增值税):

服务器价格核心 / 线程内存存储 · 端口每核价格每线程价格每 GB 内存价格
Ryzen 7 9700X$149/月8C/16T64 GB DDR52 × 1 TB NVMe · 1 Gbps$18.63$9.31$2.33
Ryzen 9 9950X$269/月16C/32T128 GB DDR52 × 2 TB NVMe · 1 Gbps$16.81$8.41$2.10
EPYC 9354P$699/月32C/64T384 GB DDR5 ECC2 × 3.84 TB NVMe · 10 Gbps$21.84$10.92$1.82

每一列都是用全价除以单项资源得出的,因此各列数字不能相加。每一行价格都已包含存储、不限流量端口、一个 IPv4 地址、IPMI 和 DDoS 防护。

用同一把尺子去衡量任何云服务器或 VPS 报价。一个 vCPU 通常对应一个硬件线程,而不是一个完整的核心,所以请按线程比较,或将 vCPU 数量减半换算成核心数:

输出
price per thread = monthly cost ÷ dedicated vCPUs
price per core   = monthly cost ÷ (dedicated vCPUs ÷ 2)
monthly cost     = hourly price × 730

请以独享 vCPU 为准,而不是共享型或可突发型 vCPU,并把服务器价格中已包含的项目加进去:块存储、按您实际用量计算的出站流量、额外 IP 地址。例如,一台 16 vCPU、64 GB 内存的实例,在不计存储和出站流量的情况下,月费必须低于 $149,才能在每线程价格上追平 Ryzen 7 9700X。

有两点需要注意。睿频可达 5.5 GHz 的 Zen 5 核心上的一个线程,与低主频服务器处理器上的一个 vCPU,每秒完成的工作量并不相同,所以每线程价格只是起点,而非定论。另外,核心也不是唯一的衡量维度:EPYC 9354P 的每核价格更高,但它在三者中每 GB 内存价格最低,还配有 ECC 内存和 10 Gbps 端口。请用我们的性能测试指南实测您的真实工作负载。

何时仍应选择 VPS

  • 工作负载很小。个人网站、机器人程序或小型 VPN 节点用不着一整台机器。我们价格最低的有货服务器为 $59/月;如果您的工作负载用一台小虚拟机就能满足,VPS 会更便宜。
  • 需求是突发性或短期的。跑一小时的 CI runner、一次压力测试、每周一次的数据任务:按小时或按秒计费,比按月租一台大部分时间闲置的服务器更划算。
  • 您需要自动伸缩。如果您的技术栈会随流量自动横向扩展,或缩容到零,那么云实例更契合这种模式;而 DediJet 按月计费。
  • 您依赖托管服务。对一些团队来说,同一平台上的托管数据库、消息队列和对象存储值得多花些钱。
  • 您希望由平台来消化硬件故障。一些平台会在硬件故障时把虚拟机放到另一台宿主机上重启。独立服务器只是一台机器:我们会在确诊故障后 4 小时内更换故障部件,但真正的高可用要靠备份和第二台服务器。

很多团队最终会采用混合架构:用独立服务器承载稳定的基础负载,用云实例应对突发流量。

对照清单:您该选哪一种?

如果以下大部分条件都符合,裸金属很可能更划算:

  • 工作负载全天候运行,且基础负载稳定。
  • 您观察到持续的窃取时间,或无法用自身代码解释的延迟抖动。
  • 磁盘延迟很关键:数据库、搜索、游戏世界、构建缓存。
  • 出站流量在您的账单中占比很大,或难以预测。
  • 您需要自己的虚拟化平台、自定义 ISO 或带外管理控制台。
  • 计入存储和出站流量后,您拿到的报价按每个独享 vCPU 折算,高于我们的每线程价格。
  • 您的团队中有人能熟练地管理服务器。

如果您需要按小时计费、自动伸缩,或者只需要一两个 vCPU,那就继续使用 VPS。

准备好比较了吗?在对比页面上并排查看各款配置,或从高性能型和企业级系列入手。按月计费且免安装费,用真实工作负载测试一个月,投入并不大。

本文提及的服务器

并排对比
在真实硬件上试试

有货服务器在付款确认后 2 分钟内上线。免安装费,可随时取消。

查看服务器