虛擬化的部署并不意味著性能的提升
盡管聽起來有點(diǎn)不可思議,但虛擬化技術(shù)確實(shí)能改進(jìn)某些應(yīng)用軟件的性能。虛擬化的管理費(fèi)用并不總是意味著以犧牲性能為代價(jià),芯片制造商AMD公司所做的試驗(yàn)就證明了這一點(diǎn)。諸如VMware這樣的虛擬化平臺(tái)廠商在過去幾年里一直和AMD(當(dāng)然也包括英特爾)這些芯片制造商密切合作來確保他們的管理程序和其他虛擬化技術(shù)能從在目前的多核中央處理器基礎(chǔ)上構(gòu)建的虛擬化擴(kuò)展中實(shí)現(xiàn)回報(bào)***化。即使這樣做會(huì)涉及到虛擬化的管理費(fèi)用。
AMD公司的產(chǎn)品銷售總監(jiān)Margaret Lewis最近接受采訪時(shí)談到了公司使用Memcached的一些體驗(yàn),這款被諸如YouTube, Twitter, Digg和WordPress等許多知名公共云服務(wù)提供商所使用的開源分布式對(duì)象緩存系統(tǒng)可以通過緩存后端數(shù)據(jù)庫數(shù)據(jù)的壓力來提高他們應(yīng)用軟件的性能。但是Memcached自身也存在一個(gè)問題,基本上可以歸結(jié)為一個(gè)事實(shí)就是這些年來網(wǎng)絡(luò)標(biāo)準(zhǔn)過去陳舊。所使用的網(wǎng)絡(luò)標(biāo)準(zhǔn)最初還是在2003年所研發(fā)的,那時(shí)大部分服務(wù)器處理器還只有一個(gè)核心。Lewis表示之前的研究結(jié)果顯示,Memcached存在線程的局限,在超過4到6個(gè)線程時(shí)性能就達(dá)到了極限。
這是那些需要向上擴(kuò)展他們工作負(fù)載的企業(yè)用戶不得不面對(duì)的問題,因?yàn)檫@種局限意味著Memcached無法利用功能強(qiáng)大的多核處理器。要擴(kuò)展應(yīng)用軟件就必須在多個(gè)服務(wù)器上運(yùn)行,因?yàn)閱渭兊脑谏厦婕筛嗟暮诵氖菬o濟(jì)于事的--因?yàn)榫€程受限。當(dāng)然這種問題不僅涉及到Memcached,對(duì)于任何線程受限的應(yīng)用軟件都是如此。這是個(gè)令A(yù)MD特別頭疼的問題,因?yàn)樗麄儤I(yè)務(wù)就是圍繞推出功能越來越強(qiáng)大的多核處理器來展開的。這也是服務(wù)器虛擬化登上歷史舞臺(tái)的原因。
為了解決這個(gè)問題,AMD公司使用配置AMD皓龍6100多核處理器和在紅帽Linux 6.1操作系統(tǒng)上托管的VMware ESX多個(gè)虛擬機(jī)以及Memcached的服務(wù)器進(jìn)行了實(shí)驗(yàn)。Lewis表示平均延遲和系統(tǒng)利用率的平衡吞吐量不會(huì)消耗過度的服務(wù)器主機(jī)資源就能實(shí)現(xiàn)這種配置下更好的性能。
結(jié)論是什么呢?與在非虛擬化的服務(wù)器上運(yùn)行Memcached相比,在服務(wù)器的12個(gè)虛擬機(jī)上運(yùn)行Memcached,AMD能夠獲得生產(chǎn)能力三倍的提升。“這聽起來有些荒謬,但是這顯示出任何應(yīng)用軟件都存在線程的局限,虛擬化能幫助用戶解決這個(gè)瓶頸?;旧险f,我們發(fā)現(xiàn)虛擬化技術(shù)所帶來的性能回報(bào)超過了虛擬化的管理費(fèi)用,因此你能獲得更高的系統(tǒng)產(chǎn)出。這是虛擬化潛在的優(yōu)勢(shì)所在”。
另外,AMD公司發(fā)現(xiàn)Memcached的產(chǎn)出可以根據(jù)使用的虛擬機(jī)數(shù)量線性擴(kuò)展(按照你所期望的),這說明像Memcached這樣存在線程局限的應(yīng)用軟件可以在虛擬機(jī)環(huán)境中通過功能更加強(qiáng)大的硬件來實(shí)現(xiàn)有效的擴(kuò)展。AMD是一家硬件制造商,毫無疑問會(huì)對(duì)這個(gè)結(jié)論非常的滿意。