云服务器的CPU核心是指逻辑核还是物理核?

直接给结论:云服务器(ECS/CVM)看到的 CPU 核心数,通常指的是“逻辑核”(Logical Cores),也就是 vCPU。

但这背后的映射关系比较复杂,不能简单画等号。为了让你彻底搞清楚,我们分三个层面来拆解:

1. 为什么叫 vCPU?

在云原生时代,物理服务器是底层的硬件资源池。云计算厂商(如阿里云、AWS、腾讯云等)通过虚拟化技术(KVM, Xen, Hyper-V 等)将一台强大的物理宿主机的 CPU 算力切分成无数个小块,分配给不同的虚拟机。

你买到的“4 核”,是指这个虚拟机实例被分配了 4 个 vCPU 的时间片

2. vCPU 和物理核的关系是什么?

这里有一个关键的指标叫 超分比(Overcommit Ratio)

  • 情况 A:高配/独占型实例(如计算优化型 c7、g7 等)

    • 很多云厂商会宣传“1 vCPU = 1 物理核”或者“1 vCPU = 0.5 物理核”。
    • 例如:在某些高性能实例中,一个 vCPU 可能对应宿主机的一个完整物理线程(Hyper-threading 开启后)。如果宿主机是 8 核 16 线程的 CPU,它最多可以分配 16 个 vCPU 给其他实例,而不产生争抢。
    • 此时: 你的 1 vCPU ≈ 1 物理线程。性能最接近裸金属,延迟最低。
  • 情况 B:通用型/突发型实例(如 t5, t6, s6 等)

    • 这类实例主打性价比,云厂商会对 CPU 进行“超卖”。
    • 比如一台物理机有 32 个物理线程,但云厂商卖了 64 甚至 128 个 vCPU 出去。
    • 此时: 你的 1 vCPU 只是共享了某个物理线程的一部分时间片。当邻居们都在跑满时,你的 vCPU 会被“饿死”,导致负载显示很高,但实际执行效率极低。

3. 如何判断你买到的是哪种?

别猜,看文档!云厂商在实例规格说明里通常会写清楚:

  • 无超分/低超分:标注为“1 vCPU = 1 物理核”或“1 vCPU = 1 物理线程”。这种适合数据库、实时渲染、高频交易。
  • 高超分:标注为“突发性能实例”或明确写出超分比(如 1:4, 1:8)。这种适合开发测试、Web 前端、低频访问的服务。

4. 实战建议:怎么避坑?

  1. 不要只看核心数,要看主频和架构

    • 同样是 4 核,Intel Xeon Platinum 和 AMD EPYC 的性能差异巨大。
    • 同样 4 核,主频 2.5GHz 和 3.0GHz 的单核性能差距明显。对于大多数应用(尤其是 Java 单线程瓶颈),单核性能 > 核心数量
  2. 警惕“逻辑核”陷阱

    • Linux 下用 lscpu 查看时,你会看到 Core(s) per socket, Thread(s) per core, CPU(s)
    • 云服务器显示的 CPU(s) 就是 vCPU 总数。
    • 如果你发现 CPU(s) 远大于物理机的物理线程数,那就是典型的超分实例。
  3. 压测验证

    • 最靠谱的方法:上 sysbenchstress-ng 做 CPU 压力测试。
    • 观察 top 中的 %wa(IO wait)和 %st(steal time,即被宿主机偷走的时间)。
    • 如果 %st 很高,说明你在和其他租户抢 CPU,这就是“逻辑核”被超卖的典型症状。

总结

云服务器里的“核心”是 vCPU(逻辑核)

  • 如果你买的是高端实例,它接近于物理线程,性能可预测。
  • 如果你买的是入门/突发实例,它是被超分的逻辑核,性能不稳定,高峰期可能卡顿。

选型原则: 生产环境关键业务选“无超分”或“低超分”的计算型实例;非核心业务、开发测试选高性价比的通用型或突发型实例。别被“8 核 16G”这种数字迷惑,要看清背后的超分策略。

未经允许不得转载:云计算HECS » 云服务器的CPU核心是指逻辑核还是物理核?