如何挑選VPS Xen與OpenVZ虛擬化技術(shù)性能對比 宇塵網(wǎng)絡為您提供xen技術(shù)vps服務器
如何挑選VPS Xen與OpenVZ虛擬化技術(shù)性能對比 宇塵網(wǎng)絡為您提供xen技術(shù)vps服務器
一、Openvz和Xen的技術(shù)規(guī)格分析
1.Xen與Openvz的區(qū)別
Xen和Openvz同樣是虛擬化主機技術(shù),區(qū)別在于Xen是半虛擬化技術(shù),它并不是一個真正的虛擬機,而是相當于自己運行了一個內(nèi)核的實例,可以自由的加載內(nèi)核模塊,虛擬的內(nèi)存和IO,穩(wěn)定而且可預測。Openvz則是操作系統(tǒng)級別的虛擬化技術(shù),是底層操作系統(tǒng)上的一層應用,這意味著易于理解和低權(quán)重開銷,一般來說也意味著更優(yōu)的性能。
這里有一個問題,可以看到實際上openvz因為免去了大量的公共開銷,理論上來說性能會比xen更好。
2.Openvz的內(nèi)核模型
首先當OpenVZ的主機說“256MB的保證”,它實際上意味著約232MB的“privvmpages”,
當“privvmpages”超過限制,malloc()將失敗并返回一個NULL。當主機服務器內(nèi)存用光了,然后虛擬環(huán)境下的進程超過 “oomguarpages”的將被終止。
OpenVZ的內(nèi)存管理方法既有問題也有優(yōu)勢。最大的問題之一是內(nèi)存容量的應用程序使用的內(nèi)存和應用程序?qū)嶋H上分配到的內(nèi)存是不同的,不同的應用程序他們的差別可能會很大。以Java為例,它通常分配一大塊的內(nèi)存,但是,它可能只使用一小部分分配的內(nèi)存。如果privvmpages受限,java會立即停止運行。調(diào)整參數(shù)可以解決一部分問題,但它處理得絕對沒有Xen來得干凈利落。事實上,幾乎所有使用內(nèi)存分配的應用程序都會受OpenVZ這個問題的影響。
proc/meminfo 本身也有問題。雖然OpenVZ的已經(jīng)為內(nèi)存進行了虛擬,但是用”free”命令依然會返回主機的內(nèi)存。這樣就會使小內(nèi)存的openvz的vps無法運行諸如java或者gcc編譯這樣的程序。
OpenVZ的內(nèi)存模型的優(yōu)點是, 它容易理解:你幾乎就只有privvmpages受限。與專用的服務器或Xen的服務器不一樣的是,你的磁盤高速緩存和頁面緩存并不計入您的總內(nèi)存使用情況。因此,在一個沒有過度銷售的openvz主機上,由于擁有較大冗余的公共資源,它實際上可能會比同類規(guī)格的Xen的VPS表現(xiàn)更佳。
3.Xen的內(nèi)存模型
Xen的系統(tǒng)模型更容易解釋。256MB的Xen的VPS是就像一個256MB的專用服務器-該內(nèi)存段是預留作VPS專用,沒有其他VPS能夠使用這部分內(nèi)存,這就像一個真正的專用服務器。
此外,當內(nèi)存不足時,VPS會使用Swap。一般每個VPS帶有兩倍大小的交換分區(qū),當您的應用需要更多的內(nèi)存,不常使用的頁面從內(nèi)存中被換出到交換分區(qū),從而騰出使更多的房間。因此,256MB的Xen的VPS系統(tǒng)實際上共有768MB內(nèi)存(256MB內(nèi)存+ 512MB的交換空間), 請相信我,交換空間是非常有用的,特別是處理突發(fā)的需求高峰時。
這么說來,Xen是永遠遠優(yōu)于OpenVZ?不然,你的256MB的VPS理論可以使用高達768MB內(nèi)存,而實際上內(nèi)核,高速緩存,緩沖,他們都占用內(nèi)存。這部分系統(tǒng)開銷也是可觀的。另外,Swap會嚴重降低性能。
4.穩(wěn)定性和可預測性
當內(nèi)存耗盡時,xen和openvz表現(xiàn)大相徑庭。xen會把不常用的內(nèi)存頁面換入Swap,這將大大降低性能,當Swap也用盡,那么xen的系統(tǒng)會響應得越來越慢,就像一臺真實的服務器一樣。
而openvz一旦內(nèi)存用盡,則會突然死亡:開不出新的程序,只能等待系統(tǒng)資源可用。更有甚者,本來運行的好好的程序也可能因為不斷增長而超過限制,然后突然死亡。這就像開車開到
毫無疑問這點上傾向于xen技術(shù),可預測,穩(wěn)定。
5.結(jié)論:如果xen和openvz一樣貴,肯定選xen,因為可預測性,即使openvz打8折,我還是追求穩(wěn)定。
上面的話總結(jié)一下,得出幾個結(jié)論:
1、XEN比openvz主機對買家更有利,比如分配給你
2、openvz更高效,xen是硬件底層虛擬,更接近真實服務器,而openvz是操作系統(tǒng)虛擬,虛擬服務自身占用內(nèi)存少,同樣的程序執(zhí)行效率更高!
3、如果購買openvz應看賣家是否會超賣,應選擇良好聲譽明確申明不會超賣的
4、如果購買xen主機,應同時關(guān)注swap大小
5、測試VPS主機性能使用Unixbench(很多人不知道),國外非常流行這個東西!
6、VPS用途:服務器、軟交換、代理和反向代理、離線BT下載等等
7、通常一般的使用條件下,兩者性能應該相差不大。