虚拟机上的CPU数是否总是有意义的?

虚拟机上,如果cat /proc/cpuinfo告诉我有4个CPU,这是否就像裸机一样有意义? 我应该如何在裸机服务器上configuration我的服务器(例如,Nginx或Apache工作者的数量)?

这非常依赖于正在使用的虚拟化解决scheme。 如果您在VMWare中显示了多个CPU,那么您将有多个vCPU分配给您的虚拟机,在这种情况下,最好是以类似的方式安排您的服务器进程,以使您拥有一对真正的内核(注意由于方式vCPU和真正的核心有时是计划好的,如果你的主机负载相对较重,你最好不要给VM多于一个vCPU,其他类似的解决scheme可能也是一样的,但是有些(特别是那些真的把一个核比提供虚拟机经常报告主机的全部function,即使你的分区,例如,有效地locking到一个核心。

这取决于pipe理程序。 如果虚拟机pipe理程序在物理处理器的一个线程中模拟4个处理器,那么你的虚拟机最好把它当作1个CPU。 如果虚拟机pipe理程序通过4个物理内核到您的虚拟机,那么您最好使用它们。