最近在一个Python项目的优化过程中,有同学反馈“性能测试服务器的CPU主频太低,不能发挥Web服务器的最佳性能”。这位同学后来还补充了一句“主频要上2.8”
。
我的神…… 还是先一笑而过吧
去解释CPU原理?什么是什么主频、外频、一级缓存、二级缓存?我想我肯定不如那些框架师专业!
我只知道机器硬件性能不能光凭其中一个指标来说事。就CPU来说,主频高就一定快吗?几年前我接触的服务器的主频都不如我工作机高,可别人服务器就是牛X。
还是拿数据说话吧,过多的争论没有任何意义。准备了三台服务器,硬件配置如下:
机器A |
|
信息名 |
描述 |
操作系统 |
CentOS release 5.4 (Final) Kernel on an \m |
内核版本 |
Linux 2.6.18-164.el5 |
操作系统位数 |
x86_64 |
主机名 |
pSrv07.higkoo.net |
|
|
硬件 |
相关信息 |
CPU1 |
Intel(R) Core(TM)2 Duo CPU E6750 @ 2.66GHz 缓存大小:4.1MB |
CPU2 |
Intel(R) Core(TM)2 Duo CPU E6750 @ 2.66GHz 缓存大小:4.1MB |
内存 |
容量:2.05GB 交换区容量:2.05GB |
磁盘 |
ATA 大小:160.0 GB |
网卡1 |
Marvell Technology Group Ltd. 88E8056 PCI-E Gigabit Ethernet Controller (rev 12) |
网卡2 |
Marvell Technology Group Ltd. 88E8056 PCI-E Gigabit Ethernet Controller (rev 12) |
|
|
机器B |
|
信息名 |
描述 |
操作系统 |
CentOS release 5.4 (Final) Kernel on an \m |
内核版本 |
Linux 2.6.18-164.el5 |
操作系统位数 |
x86_64 |
主机名 |
pSrv08.higkoo.net |
|
|
硬件 |
相关信息 |
CPU1 |
Intel(R) Xeon(TM) CPU 2.80GHz 缓存大小:1.02MB |
CPU2 |
Intel(R) Xeon(TM) CPU 2.80GHz 缓存大小:1.02MB |
CPU3 |
Intel(R) Xeon(TM) CPU 2.80GHz 缓存大小:1.02MB |
CPU4 |
Intel(R) Xeon(TM) CPU 2.80GHz 缓存大小:1.02MB |
内存 |
容量:4.1GB 交换区容量:2.06GB |
磁盘1 |
LANGCHAO 大小:36.7 GB |
磁盘2 |
FUJITSU 大小:73.5 GB (主分区/为ext3格式,/data分区为Xfs格式的Raid0) |
网卡1 |
Intel Corporation 82541GI Gigabit Ethernet Controller (rev 05) |
网卡2 |
Intel Corporation 82541GI Gigabit Ethernet Controller (rev 05) |
|
|
机器C |
|
信息名 |
描述 |
操作系统 |
CentOS release 5.4 (Final) Kernel on an \m |
内核版本 |
Linux 2.6.18-164.el5 |
操作系统位数 |
x86_64 |
主机名 |
pSrv13.higkoo.net |
|
|
硬件 |
相关信息 |
CPU1 |
Intel(R) Xeon(R) CPU E5405 @ 2.00GHz 缓存大小:6.14MB |
CPU2 |
Intel(R) Xeon(R) CPU E5405 @ 2.00GHz 缓存大小:6.14MB |
CPU3 |
Intel(R) Xeon(R) CPU E5405 @ 2.00GHz 缓存大小:6.14MB |
CPU4 |
Intel(R) Xeon(R) CPU E5405 @ 2.00GHz 缓存大小:6.14MB |
内存 |
容量:4.1GB 交换区容量:2.05GB |
磁盘 |
SEAGATE 大小:146.8 GB (SAS硬盘) |
网卡1 |
Intel Corporation 80003ES2LAN Gigabit Ethernet Controller (Copper) (rev 01) |
网卡2 |
Intel Corporation 80003ES2LAN Gigabit Ethernet Controller (Copper) (rev 01) |
|
|
最高点击率 |
CPU概要 |
最高点击率(Hits/Second) |
短连接 |
长连接 |
机器A |
Intel(R) Core(TM)2 Duo CPU E6750 @ 2.66GHz 缓存大小:4.1MB 单CPU * 双核 |
37000 |
8800 |
机器B |
Intel(R) Xeon(TM) CPU 2.80GHz 缓存大小:1.02MB 双CPU * 双核 |
17000 |
55000 |
机器C |
Intel(R) Xeon(R) CPU E5405 @ 2.00GHz 缓存大小:6.14MB 单CPU * 四核 |
41000 |
130000 |
机器B是双CPU的,每个CPU都是双核,主频是2.80GHz,是三台机是“最牛的”!结果呢?
三台机网络环境、操作系统和Web应用(Nginx0.8.35)完全一致。Nginx配置的进程数为规则为(核心数*2)。由于机器A只有两个核所以进程数为4,另外两台为8,其它完全相同。
测试结果至少可以说明的是:并不是CPU主频高机器就快的!
本文转自holy2009 51CTO博客,原文链接:http://blog.51cto.com/holy2010/373511