我有两台虚拟 PC,在主机上运行 Windows Server 2003 和 CentOS 5.4。我在两台计算机上都使用 Java 服务器。我将 Java 服务器的文件从主机复制到两个虚拟化上。当两台服务器都处于空闲状态(没有用户在线)时,Windows 服务器使用其专用核心的 0-4%,而 CentOS 服务器运行其专用核心的 5-15%。此时,Java 服务器的两个副本似乎都处于相同的负载下。两台服务器都使用 Sun JDK 1.7。
我发现在我的 Windows Server 2003(专用)服务器上运行 Java 服务器比在我的 CentOS VPS 上运行效果好得多,因此我开始对此进行测试。我开始对此进行测试,试图排除这是虚拟化问题。(我的专用服务器似乎与虚拟 Windows 主机具有相同的 CPU 使用率)
为什么在工作量大致相同的情况下 CentOS 服务器的 CPU 使用率会比 Windows 高呢?
答案1
可能存在多种因素,例如在某种类型的服务器操作系统上安装什么,以及它们如何处理类似的任务。需要考虑的变量太多,因为比较不是两个截然不同的操作系统之间的一对一或同类比较。