之前写过 在公用云环境部署TDengine的那些KENG,介绍了云服务器选型时磁盘IO的坑,最近又遇到了新的坑,分享一下。
以阿里云的g6实例为例,下图红框中是 ecs.g6.8xlarge 和 ecs.g6.13xlarge 两个规格。

从上图中可以看到 ecs.g6.13xlarge 规格均比 ecs.g6.8xlarge 翻了一番,理论上性能应该更高。
但实际是这样吗?
除上图的规格之外,运营商隐藏了一个关键参数 L3,上述两个规格虽然 vCPU 从32增加到了 52,但是L3 还是 36MB,并没有发生改变。
这个会带来什么影响呢? 直接让 ChatGPT 回答:
算力堆上去了,但"共享大脑皮层"(L3)没变,结果是更多线程在更小的公共空间里互相踩脚。
- L3 不变 + 核数增加 = Cache Thrash(缓存踩踏)
- Cache coherence 流量指数级上涨
- 单核性能没变,但"有效并行度"下降
所以,数据库的性能真的能提升吗??
那么私有云是否好些呢?很遗憾,L3 是虚拟化的通病,对于不同虚拟化软件:
VMware > KVM(精调) > KVM(默认) > Xen(数据库视角)