當(dāng)發(fā)明超文本傳輸協(xié)議(HTTP)的時候,沒有人能夠預(yù)計具有現(xiàn)代瀏覽器功能的現(xiàn)代Web 2.0基礎(chǔ)架構(gòu)的出現(xiàn)。現(xiàn)代生活中,我們每天多次進(jìn)行“網(wǎng)上沖浪“。我們通過Facebook,MySpace和Flickr等網(wǎng)絡(luò)工具進(jìn)行溝通,也不忘記使用常規(guī)的電子郵件。我們能安心地在網(wǎng)上購物,得益于對原始協(xié)議的安全擴(kuò)展,該協(xié)議現(xiàn)在稱為 HTTPS(“安全”部分已經(jīng)被加入)。同時還有機(jī)對機(jī)(M2M)應(yīng)用程序在后臺運行,完成資料庫更新、氣象資料收集等任務(wù)。 所有這些系統(tǒng)都是基于服務(wù)器-客戶端模式實現(xiàn)的。也就是說,有一個客戶端(如瀏覽器)和一臺提供內(nèi)容或收集信息的服務(wù)器。開始時,會給服務(wù)器分配一個(或幾個)IP地址,然后服務(wù)器軟件會將內(nèi)容提供給客戶。創(chuàng)建新“網(wǎng)站”時,服務(wù)器軟件將具備所分配的資源和專用存儲空間。通常情況下,這種模式在負(fù)荷平穩(wěn)(即波動不大)的情況下,是能夠正常工作的。例如,如果我已知一臺服務(wù)器每秒可提供1000萬個網(wǎng)頁(假設(shè)通信帶寬可用),而對方也知道每個被托管的網(wǎng)站的最大“頁面點擊率”,那么他就可以計算出服務(wù)器上的負(fù)荷,以便維持為客戶(托管客戶和使用客戶)提供的峰值性能。 1 Web 2.0的影響 當(dāng)網(wǎng)站上的所有內(nèi)容都是靜態(tài)內(nèi)容(即內(nèi)容很少發(fā)生變化)時,運行就會相當(dāng)良好。僅具有單詞查詢功能(沒有視頻和音樂等)的在線詞典就是一個很好的例子。在這種情況下就很容易計算出負(fù)荷量。據(jù)統(tǒng)計,世界上不會每個人同時想查詢“Stochastic(隨機(jī)的)”一詞的定義……您可能認(rèn)為負(fù)荷會按一天內(nèi)不同時段發(fā)生變化,但就全球范圍而言,有人是一直在進(jìn)行查詢的。 Web 協(xié)議的工作方式是:打開與服務(wù)器的會話,接收內(nèi)容,然后終止會話, 釋放服務(wù)器中的資源為其他任務(wù)所用。現(xiàn)在所有“內(nèi)容”都在瀏覽器中。因此,當(dāng)您查找一個詞時,其定義和任何圖形就會發(fā)回給您,您可以按照您自己的速度進(jìn)行閱讀。服務(wù)器就會轉(zhuǎn)到其他事情上。 但是,情況不再如此。當(dāng)您下載音樂視頻的時候情況會怎么樣呢?服務(wù)器不再只是提供一個網(wǎng)頁,然后繼續(xù)前進(jìn)。它現(xiàn)在在努力將40兆文件轉(zhuǎn)移到您的機(jī)器上。在網(wǎng)頁中加入嵌入式播放器,服務(wù)器就將實時把視頻流發(fā)送給客戶端。在這種情況下,負(fù)荷仍然是可以統(tǒng)計監(jiān)測的,網(wǎng)站也是可以修改的。隨著受歡迎程度或需求的增加,網(wǎng)站可被轉(zhuǎn)移到專用的、僅處理單域的服務(wù)器上。 那是Web 1.0時出現(xiàn)的情況。今天Web 2.0所存在的問題是,我們所做的大都是在服務(wù)器端完成的。例如,Google Docs是一個位于服務(wù)器端的完整的文件編輯和歸檔系統(tǒng)。它將計算機(jī)的瀏覽器用作用戶界面工具,卻很少動用客戶資源。現(xiàn)在,人們在開始使用網(wǎng)絡(luò)時,更多的工作是由后臺完成的。在服務(wù)器和客戶端之間的互動不斷增加,除非采取措施來保證足夠的資源,否則這將會使服務(wù)器的負(fù)荷產(chǎn)生劇烈波動,并導(dǎo)致性能降低。 2 尋求解決辦法 過去,為了防止網(wǎng)站崩潰的一種能效低下的做法是將統(tǒng)計的最大負(fù)荷資源加載到一個網(wǎng)域。大多數(shù)情況下,這些服務(wù)器的負(fù)載可能只能達(dá)到40-60%,但在高峰時段將達(dá)到100%,但該網(wǎng)站仍能繼續(xù)有效地工作。人們很快認(rèn)識到,大部分時間服務(wù)器并沒有達(dá)到最大荷載。它們只是在部分時間工作,直至高峰負(fù)載來臨——而這種高峰來臨的時間并不總是已知的。例如,在任何特定的一天,一個新聞網(wǎng)站的業(yè)務(wù)流量都可能會維持在正常的水平。而當(dāng)一個突發(fā)事件發(fā)生,如果每個人都上網(wǎng)查與之相關(guān)的照片或視頻時,就可能會導(dǎo)致網(wǎng)站癱瘓。 最佳解決方案是將服務(wù)器“虛擬化”——即創(chuàng)建看起來像是專用服務(wù)器的軟件,但是,如果需要的話,在處理過程中也能夠動態(tài)轉(zhuǎn)向更多的資源。當(dāng)高負(fù)荷消失時,該軟件能通過將更多網(wǎng)站合并到一臺機(jī)器(現(xiàn)代服務(wù)器中的刀片)上來使服務(wù)器“瘦身”。其他未使用的刀片可以進(jìn)入待機(jī)狀態(tài),從而大大減少中心的耗電量。采用這種新的方法,不僅可以降低服務(wù)器的電力消耗量,而且還降低了散熱的HVAC成本,從而降低服務(wù)器機(jī)房的能源成本。 3 對服務(wù)器的沖擊 這是邁向數(shù)據(jù)中心和服務(wù)器群“綠化”進(jìn)程的一項重大舉措。能源消耗降低了,但是往往軟件同時也會影響到硬件(反之亦然)。切負(fù)荷對系統(tǒng)硬件和周圍的基礎(chǔ)設(shè)施有什么樣的影響呢? 首先應(yīng)觀察刀片服務(wù)器的電源。一般情況下,刀片服務(wù)器中有兩套冗余電源,將民用電源轉(zhuǎn)為直流母線。母線沿背板的長度(所有刀片插入的位置)布設(shè),而且每一個刀片都有自己的電源調(diào)節(jié)器,用于提供正確的電壓和電流。在較大的系統(tǒng)中,直流母線可以沿機(jī)架的高度布設(shè),為疊放在其他系統(tǒng)上方的多套刀片服務(wù)。 在設(shè)計電源的時候,需要有一個作為目標(biāo)負(fù)荷的規(guī)范。這就告訴設(shè)計者在選擇元件時將最高的能效轉(zhuǎn)換置于何處。設(shè)計方程式提供了系統(tǒng)將最有效工作的元件值。這是一個固定點,所以升高或降低負(fù)荷(多數(shù)情況下都是降低負(fù)荷)都將改變效率曲線。如果目標(biāo)負(fù)荷的峰值效率為92%,那么,將負(fù)荷降低至目標(biāo)要求的25%就可能會導(dǎo)致效率下降到75%。 電源設(shè)計者突然面臨一個新的挑戰(zhàn),即提供能在寬負(fù)載范圍內(nèi)工作的高效率的電源。現(xiàn)代開關(guān)電源使用大功率的FET晶體管來“開關(guān)”電源,采用脈沖寬度調(diào)制(還有其他方法)來實現(xiàn)。這些技術(shù)的輸出均呈現(xiàn)出復(fù)雜的波形,其平均值為新的較低電壓。由電感器和電容器制成的大功率濾波器能使輸出波形更加平滑,同時提供純凈的直流電壓。輸出由控制器監(jiān)控,同時,場效應(yīng)管的切換被改變,以便在負(fù)載和輸入發(fā)生變化時能夠保持穩(wěn)定的輸出。 場效應(yīng)管、電感器和電容器都應(yīng)加以選擇以滿足負(fù)載規(guī)格,同時,一旦其在線路中被固定,它們的值就不能以動態(tài)的方式加以改變。因此,如果負(fù)荷下降到設(shè)計指標(biāo)以下,能源就會因為這些元件的損耗而受到損失。一種解決方案是構(gòu)建多相轉(zhuǎn)換器。在大電流電源(如個人電腦中向處理器提供內(nèi)核電壓的主板中的電源)中,非常普遍的做法是設(shè)定3個或4個協(xié)同工作的電源——每個電源輪流向負(fù)載供電。 這種拓?fù)浣Y(jié)構(gòu)的優(yōu)點在于當(dāng)負(fù)載降低時,可以關(guān)閉某些相,而其余各相則被擴(kuò)張以代替缺失的相(見圖1)。這就會提高電源的復(fù)雜性,其用于確保在相增加或減少的過渡期內(nèi),其輸出一直不會發(fā)生變化。所有的電源轉(zhuǎn)換器都在峰值效率附近工作或者被關(guān)閉。將這種方法應(yīng)用到大型直流母線電源,使得刀片服務(wù)器能在寬負(fù)載范圍內(nèi)高效運行。但是,為了應(yīng)對這些動態(tài)負(fù)載,電源也正變得越來越復(fù)雜。 圖1-隨負(fù)載變化切相 4 對基礎(chǔ)設(shè)施的影響 和電源的情況一樣,承載信息的通訊基礎(chǔ)設(shè)施也會受到影響。每一臺刀片服務(wù)器均通過將一個或多個千兆以太網(wǎng)連接到一個交換機(jī)的方式來進(jìn)行通信。服務(wù)器和交換機(jī)中的物理層設(shè)備都會消耗許多瓦的功率,而且可能會迅速累計起來。如果一臺刀片服務(wù)器置于備用,物理層設(shè)備通常不會被關(guān)閉——仍然保持鏈接,但通話已經(jīng)停止。在大多數(shù)情況下,這并不會顯著降低物理層設(shè)備(PHY)所消耗的能量,因為它仍需要維持鏈接。即使服務(wù)器端的物理層設(shè)備(PHY)關(guān)機(jī),交換機(jī)端的物理層設(shè)備(PHY)也必須繼續(xù)開機(jī)運行以便監(jiān)視鏈接活動——這些又會導(dǎo)致能源消耗。 目前正在采取多種方法來解決這個問題。當(dāng)鏈接消失時可將其轉(zhuǎn)至備用或有意置于低功耗狀態(tài)的物理層設(shè)備(PHY)將減少能源消耗。電氣和電子工程師協(xié)會(IEEE)有一個工作組,叫做802.3az任務(wù)組。其目標(biāo)就是開發(fā)協(xié)議,該協(xié)議用于新物理層設(shè)備(PHY),在使用率較低時能夠降低功耗及使鏈接保持激活狀態(tài)。 另一種方法是簡單地對半導(dǎo)體工藝本身進(jìn)行限制。CMOS工藝功耗與頻率成線性關(guān)系與電源電壓成指數(shù)關(guān)系(見方程式1)。 方程式1 – CMOS的能耗 過去采用個人電腦處理器中的動態(tài)電壓調(diào)節(jié)之類的技術(shù)來降低這些損失。如今,更現(xiàn)代的技術(shù)叫自適應(yīng)電壓調(diào)節(jié)或AVS, 由美國國家半導(dǎo)體公司率先推出10G base-T Teranetics TN2022等物理層設(shè)備就使用這種技術(shù)。基本上,AVS技術(shù)可連續(xù)監(jiān)測設(shè)備內(nèi)部過程的性能和進(jìn)行自動調(diào)整,通過調(diào)整電源電壓來實現(xiàn)。與固定電源電壓相比,該技術(shù)可以節(jié)省20%至50%的能源。此外,它可以補(bǔ)償運行過程中的溫度和過程變化(老化)。這項技術(shù)與其它技術(shù)相結(jié)合就可以大大降低基礎(chǔ)設(shè)施應(yīng)用的能源消耗,并自動適應(yīng)由于服務(wù)器接入或退出網(wǎng)絡(luò)導(dǎo)致的負(fù)載變化。 5 結(jié)論 那么,還可能發(fā)生其他情況嗎?大量自身處理能力很低的上網(wǎng)本(Netbook)正將更多的資源推回到服務(wù)器。不久以后,可能很少有軟件或磁盤存儲器保存在這些計算機(jī)內(nèi)——大多數(shù)文件都將保存在“虛擬”中。用于產(chǎn)生和分享文檔或演示的所有傳統(tǒng)軟件工具都將被放在服務(wù)器上。 此外,虛擬游戲正在興起。大多數(shù)游戲計算機(jī)要求極高性能的計算來提供這些游戲中所描繪的逼真場景。這就可能會轉(zhuǎn)至服務(wù)器端,僅將實時視頻流發(fā)送到用戶端電腦。這可能就會使低性能上網(wǎng)本和其他計算設(shè)備(包括手持式移動終端,如iPhone等)能夠播放高性能的游戲。 人類具有移動性,移動終端的發(fā)展變化會將更多的資源需求返回到數(shù)據(jù)中心和基礎(chǔ)設(shè)施。由于網(wǎng)絡(luò)活動具有大范圍波動的特性,虛擬化將繼續(xù)實現(xiàn)能源節(jié)約,同時,硬件將需要尋找新的途徑來適應(yīng)不斷變化的負(fù)載。 |