Xen 技術優(yōu)勢
無限網使用的是Xen技術。這有很大的優(yōu)勢,因為Xen擁有資源保護以及用戶隔離功能。因此,您的VPS不會受到其他用戶的影響,也能更好保證您主機的性能。
相對來說,提供OpenVZ的公司也不少。那么這兩種技術有什么不同呢?請看以下的一篇文章:
經常使用VPS的人,肯定不會對Xen與OpenVZ兩個陌生,但是往往有小白會問,什么是Xen?什么是OpenVZ?這兩者有什么區(qū)別?下面便宜吧收集一篇文章,就當幫大家掃一下盲吧,這樣也好更好地鑒別VPS的好壞,買到性價比更高的VPS。
一、Openvz和Xen的技術規(guī)格分析
1.Xen與Openvz的區(qū)別
Xen和Openvz同樣是虛擬化主機技術,區(qū)別在于Xen是半虛擬化技術,它并不是一個真正的虛擬機,而是相當于自己運行了一個內核的實例,可以自由的加載內核模塊,虛擬的內存和IO,穩(wěn)定而且可預測。Openvz則是操作系統(tǒng)級別的虛擬化技術,是底層操作系統(tǒng)上的一層應用,這意味著易于理解和低權重開銷,一般來說也意味著更優(yōu)的性能。
這里有一個問題,可以看到實際上openvz因為免去了大量的公共開銷,理論上來說性能會比xen更好。為什么大家都會認為openvz過分壓榨性能呢?我認為是因為openvz配置起來比較靈活,給黑心 openvz服務商改低限制的機會。
比如mediatemple,號稱512M內存的dv方案,kmemsize才12M,不了解的人看了512M覺得很哈皮啊,可是使用的時候一般這512M能分到你手里一半就不錯了。此消彼長,所以才會有xen 能更好地利用機器性能的錯覺。
2.Openvz的內核模型
首先當OpenVZ的主機說“256MB的保證”,它實際上意味著約232MB的“privvmpages”,14M的“kmemsize”和其他雜項資源。當應用程序調用 malloc()分配的內存將被添加到“privvmpages”。
當“privvmpages”超過限制,malloc()將失敗并返回一個NULL。當主機服務器內存用光了,然后虛擬環(huán)境下的進程超過 “oomguarpages”的將被終止。
OpenVZ的內存管理方法既有問題也有優(yōu)勢。最大的問題之一是內存容量的應用程序使用的內存和應用程序實際上分配到的內存是不同的,不同的應用程序他們的差別可能會很大。以Java為例,它通常分配一大塊的內存,但是,它可能只使用一小部分分配的內存。如果privvmpages受限,java會立即停止運行。調整參數可以解決一部分問題,但它處理得絕對沒有Xen來得干凈利落。事實上,幾乎所有使用內存分配的應用程序都會受OpenVZ這個問題的影響。
/proc/meminfo 本身也有問題。雖然OpenVZ的已經為內存進行了虛擬,但是用”free”命令依然會返回主機的內存。這樣就會使小內存的openvz的vps無法運行諸如java或者gcc編譯這樣的程序。
OpenVZ的內存模型的優(yōu)點是, 它容易理解: 你幾乎就只有privvmpages受限。與專用的服務器或Xen的服務器不一樣的是,你的磁盤高速緩存和頁面緩存并不計入您的總內存使用情況。因此,在一個沒有過度銷售的openvz主機上,由于擁有較大冗余的公共資源,它實際上可能會比同類規(guī)格的Xen的VPS表現更佳。
3.Xen的內存模型
Xen的系統(tǒng)模型更容易解釋。256MB的Xen的VPS是就像一個256MB的專用服務器-該內存段是預留作VPS專用,沒有其他VPS能夠使用這部分內存,這就像一個真正的專用服務器。
此外,當內存不足時,VPS會使用Swap。一般每個VPS帶有兩倍大小的交換分區(qū),當您的應用需要更多的內存,不常使用的頁面從內存中被換出到交換分區(qū),從而騰出使更多的房間。因此,256MB的Xen的VPS系統(tǒng)實際上共有768MB內存(256MB內存+ 512MB的交換空間),請相信我,交換空間是非常有用的,特別是處理突發(fā)的需求高峰時。
這么說來,Xen是永遠遠優(yōu)于OpenVZ?不然,你的256MB的VPS理論可以使用高達768MB內存,而實際上內核,高速緩存,緩沖,他們都占用內存。這部分系統(tǒng)開銷也是可觀的。另外,Swap會嚴重降低性能。
4.穩(wěn)定性和可預測性
當內存耗盡時,xen和openvz表現大相徑庭。xen會把不常用的內存頁面換入Swap,這將大大降低性能,當Swap也用盡,那么xen的系統(tǒng)會響應得越來越慢,就像一臺真實的服務器一樣。
而openvz一旦內存用盡,則會突然死亡:開不出新的程序,只能等待系統(tǒng)資源可用。更有甚者,本來運行的好好的程序也可能因為不斷增長而超過限制,然后突然死亡。這就像開車開到70碼,然后突然撞墻上了,一般會死得很慘。
毫無疑問這點上我傾向于xen技術,可預測,穩(wěn)定。
5.結論
如果xen和openvz一樣貴,我肯定選xen,因為可預測性,即使openvz打8折,我還是追求穩(wěn)定。
上面的話總結一下,得出幾個結論:
1、XEN比openvz主機對買家更有利,比如分配給你512M內存后,這一部分內存就從服務器上專門劃給你了,別人將無法使用,而openvz則是共用內存,比如分配給你512M內存是指最大你能使用512M內存,比如你占用了200M內存,那么就只從物體內存中分配200M給你,所以賣家非常容易在服務器上面超賣!
2、openvz更高效,xen是硬件底層虛擬,更接近真實服務器,而openvz是操作系統(tǒng)虛擬,虛擬服務自身占用內存少,同樣的程序執(zhí)行效率更高!
3、如果購買openvz應看賣家是否會超賣,應選擇良好聲譽明確申明不會超賣的
4、如果購買xen主機,應同時關注swap大小
5、測試VPS主機性能使用Unixbench(很多人不知道),國外非常流行這個東西!
這是它的一些參數說明
以下為引用的內容:
dhry2reg 內存的register性能
whetstone-double 雙精度浮點性能
execl execl call性能
fstime 文件系統(tǒng)性能
fsbuffer 文件系統(tǒng)性能
fsdisk 文件系統(tǒng)性能
pipe 管道(pipe)的性能
context1 管道上下文切換的性能
spawn 創(chuàng)建進程的性能
shell shell并發(fā)性能
syscall 系統(tǒng)調用性能
6、VPS用途:服務器、軟交換、代理和反向代理、離線BT下載等等
7.通常一般的使用條件下,兩者性能應該相差不大。