我在数据中心的同一机架(负载均衡器后面)中运行两台Dell R410服务器。两者都具有相同的硬件配置,运行Ubuntu 10.4,已安装相同的程序包并运行相同的Java Web服务器(没有其他负载),我发现两者之间的性能差异很大。
两台服务器的平均响应时间之间的性能差异最为明显(在Java应用本身中进行了测量,没有网络延迟):其中一台比另一台快20-30%,而且始终如一。
我曾经dstat
弄清楚是否还有更多的上下文切换,IO,交换或其他任何东西,但是我看不出有什么区别。在相同的工作负载下(无交换,几乎没有IO),一台服务器上的CPU使用率和负载更高。
因此,差异似乎主要是受CPU限制的,但是使用sysbench
(关闭所有其他负载)的简单cpu基准测试确实产生了差异,但仅为6%。因此,也许不仅是CPU,而且还有内存性能。
到目前为止,我已经检查了:
- 所有组件的固件版本(相同)
- BIOS设置(我使用进行了转储
dmidecode
,没有任何区别) - 我比较了
/proc/cpuinfo
,没有区别。 - 我比较了的输出
cpufreq-info
,没有区别。 - Java / JVM参数(两个系统上的版本和参数相同)
另外,几个月前我完全更换了RAM,没有任何效果。
我搞不清楚了。我该怎么做才能解决?
更新:是的!现在两台服务器的性能均相等。这是“ power CRAP”设置,即jim_m_somewhere在注释中将其命名。BIOS的“电源管理”选项位于快速服务器上的“最高性能”上,而另一服务器位于“活动电源控制器”(Dell的默认设置)上。显然,我忘记了两年前进行的设置,但并不是在所有服务器上都这样做。感谢大家的宝贵帮助!