也许你在建设网站时迷茫过,也许你还在为选错了VPS还在懊恼…
先来段介绍
Xen是一种开源的多平台兼容的高性能虚拟化技术,它支持在除MS大叔的操作系统外的大部分主流系统上运行,目前它有多种虚拟化技术,并且能近最大限度发挥出虚拟机的性能。
Xen目前可以运行在x86系统上,并正在向x86_64、IA64、PPC移植。移植到其他平台从技术上是可行的,未来有可能会实现。
使用范围
Xen凭着独特的虚拟化性能优势赢得了越来越的广泛应用。目前被用户充分应用在以下领域:
◆ 服务器应用整合:在虚拟机范围内,在一台物理主机上虚拟出多台服务器, 以安装多个不同的应用,充分利用服务器的物理性能,灵活进行服务器的应用迁移。
◆ 软件开发测试:用户可利用Linux的低成本优势非常灵活地搭建多个应用系统开发平台,由此节省了大量的开发成本,加快了开发进程。
◆ 集群运算:和单独的管理每个物理主机相比较,虚拟机管理更加灵活,同时在负载均衡方面,更易于控制和隔离。
◆ 多操作系统配置:以开发和测试为目的,同时运行多个操作系统;
◆ 内核开发:在虚拟机的沙盒中,做内核的测试和调试,无需为了测试而单独架设一台独立的机器;
◆ 为客户操作系统提供硬件技术支持:可以开发新的操作系统, 以得益于现存操作系统的广泛硬件支持,比如Linux;
好了,介绍完了,那么就该说说正事了
为什么我现在才弄清楚XEN的CPU核数问题呢…因为我目前打算建一个论坛,虚拟主机肯定是不行的…所以…
下面截取一段来自 http://blog.csdn.net/wind0513/article/details/5541646 的段落
xen客户机启动的时候,虚拟CPU是由dom0系统决定固定在某个物理CPU核心上的,这个分配具有随机性,比如我们的机器上有2个双核的处理 器,也就是说有4个cpu核心,同时我们分配4个核给我们的虚拟客户机,那么我们在客户机也看到4个cpu核心的,但是这四个vcpu核心并不是真的对应 着物理机器上的四个核,可能四个虚拟cpu对应的是物理cpu中的1~4个核,也就是说有下面4个可能:
4vcpu=1cpu
4vcpu=2cpu
4vcpu=3cpu
4vcpu=4cpu
vcpu指虚拟CPU核心
cpu指物理CPU核心
因 此,当我们的虚拟客户机上如果运行的是运算密集型的任务的时候,就必须看看我们vcpu与物理CPU的对应,必要的情况下手工固定VCPU到物理CPU 上,使该虚拟机可以使用所有的物理核心;而如果你正在运行IO密集型任务,那么最好就分配一个超线程或整个核给dom0,并且固定其他的域让他们不能使用 CPU 0。
这上面说的是什么呢?
其实它主要讲的是XEN的CPU的简单分配机制。
XEN在分配虚拟机的CPU(后面用VCPU代替)时,会将VCPU的运算固定在一个物理核心上进行运算,而这里就是IDC服务商的CPU卖点了。
其实,IDC服务商可以分配N个VCPU给你,让你看起来说,哇,这VPS多么好啊~~这是黑心的IDC,钱收够了跑路的那种…
但是实际控制着VPS的CPU运算能力的因素是它能在多少物理CPU核心进行运算。
打个比方,暂且不管VPS有多少VCPU,就把它当成一个人(VCPU能在多少物理CPU核心进行运算就当成他的腿),试想,是一条腿的人跑(暂且就当跑吧= =!)得快些,还是两条腿的,还是三条腿的(就当他有),还是四条腿的跑得快些?
这么一说,我想大家都明白了把,XEN的VPS的CPU性能不是看它有多少VCPU,而是看它能在多少物理CPU核心上进行运算,如果大家想买到真材实料的XEN的VPS,就得看它的VCPU能在多少物理核心上进行运算!
就算IDC分配给你1亿个VCPU,但是你只能在一个物理核心上进行运算,那么你的那个VPS还是渣渣…
(以上成立的前提是XEN使用Credit的调度算法,并且cap相同,这个大家有兴趣的可以了解下~~!)
完了。。。大家要是觉得好就点下标题下部分的分享或者是下面的分享和喜欢。。。一切随大家~~
转载请注明:神奇海域 » XEN VPS的CPU核数问题简明解答