雲端計算-從基礎到應用架構系列-雲端計算的演進

weixin_34162629發表於2011-01-08

開篇

      本篇是主要講述雲端計算的發展歷程,由於雲端計算本身提出來也不是太久,並且其實雲端計算也是經過前人的一些經驗總結提出,所以我們對之前的一

些計算機的發展史有個一定的瞭解,那麼對雲端計算的理解就更深入了,當今資訊化技術的飛速發展,使用者通過瀏覽器完成資訊服務的訪問,促進了從傳

統的資料中心的模式轉變到雲端計算的模式的動力,隨著伺服器虛擬化,並行處理,向量處理等技術的飛速發展,推動了現有企業應用模式的轉變,本文

將會針對這些描述進行闡述,加深對雲端計算的理解,當然如果您在本文中發現錯誤之處,那麼請您批評指出,謝謝。

摘要

      上一篇《雲端計算-從基礎到應用架構系列-雲端計算的概念》我們講述了關於雲端計算方面的概念,那麼為了加深對這些概念的理解,我們這裡對計算機

的軟硬體的發展史來對比分析下雲端計算的未來趨勢,並且我們知道對於資訊化技術的發展主要集中在軟體和硬體二個方面,就目前的情況來說,硬體有

提出“摩爾定律”這個我想大部分的人應該都知道,不過我在後面還是簡單的說明下,現在的這個階段,是資訊爆炸的階段,就目前我們經常使用的無

論是Google搜尋還是Baidu搜尋,或者是Bing 都有非常大的網頁資料量,可見目前的資訊化技術的增長之快。

      我們的主題主要是下面的幾個方面的內容:

      1、對應計算機硬體的演化。

      2、網際網路的發展。

      3、虛擬化技術的演進。

      4、雲端計算的優勢和變革

本文大綱

1、開篇

2、摘要

3、本文大綱

4、硬體的發展史

5、網際網路的發展

6、虛擬化技術的演進

7、雲端計算的優勢和變革

8、本文總結

9、後續

硬體的發展史

      計算機的發展史我們大家應該都從計算機基礎那本書上應該學習過經過了4個階段:

      第一個階段是:1946-1957年:電子管計算機。

      第二個階段是:1958-1963年:電晶體計算機。

      第三個階段是:1964-1969年:小規模積體電路計算機。

      第四個階段是:1970-1990年:微處理器及大規模/超大規模積體電路計算機。

      本文將會從另外一個角度來說明,就是從計算機的代數來說明可能和上面的幾個時間點會有部分出入,不過採用的技術上是相近的

第一代計算機:

      第一代計算機可以追溯到1943年,當時由哈佛大學設計開發,IBM出資贊助完成,這是一臺可程式設計的計算機。Mark I 詳細資訊:

摘自“維基百科”

馬克一號(Mark I)是美國第一部大尺度自動數位電腦,被認為是第一部萬用型計算機。它的生產和設計者給它起的名字是Automatic Sequence Controlled Calculator(全自動化循序控制計算機,縮寫為ASCC),馬克一號是它的使用者哈佛大學給它起的名字。

這部機電式ASCC是由IBM的Howard H. Aiken所設計的,在1944年8月7日搬到哈佛大學。馬克一號的特點為全自動運算。一但開始運算便無須人為介入。馬克一號是第一部被實作出來的全自動電腦,同時與當年的其他電子式電腦相比它非常可靠。大家認為「這是現代電腦時代的開端」以及「真正的電腦時代的曙光」。

ASCC是由開關、繼電器、轉軸以及離合器所構成。它使用了765,000個元件以及幾百哩長的電線,組裝大小為16公尺(51呎)長,2.4公尺(8呎)高,2呎深。重達4500公斤(5短噸)。其基本計算單元使用同步式機械,所以它有一跟長15公尺(50呎)的傳動軸,並由一顆4千瓦的馬達所驅動。馬可一號可以儲存72組資料,每組資料有23位十進位數字。每秒可執行3次加法或是減法。一個乘法則須6秒,一個除法須15.3秒,計算一個對數或是一個三角函式需花費超過一分鐘。

馬克一號藉由打卡紙讀取、執行每一道指令。它沒有條件分支指令。這表示需要複雜運算的程式碼會很長一串。迴圈的完成需利用打卡紙頭尾相接的方式。這種程式碼與資料分開放置的架構就是眾所週知的「哈佛架構」。計算機先驅Grace Hopper是馬克一號的程式設計員。

在捐贈儀式上,Aiken沒有提到IBM對於設計與製造這部電腦的參與,IBM對此很不滿,因此與Aiken分道揚鑣。IBM將這部電腦命名為ASCC但隨後哈佛大學與Aiken將它改為馬克一號。 IBM之後去製造了另一部電腦SSEC。

馬克一號之後有馬克二號(在1947年 或是 1948年),馬克三號/ADEC(1949年九月)以及哈佛馬克四號(1952年),全都是Aiken的工作成果。馬克二號是馬克一號的效能增進版,但也是由機電繼電器所構成。馬克三號部分採用電子元件,而馬克四號就全部改用電子元件了,也就是固態元件。馬克三號與馬克四號使用磁鼓記憶體,馬克四號同時也有使用磁芯記憶體。馬克二號與馬克三號搬到維吉尼亞州的Dahlgren基地給美國海軍使用,馬克四號留在哈佛大學並且給了美國空軍使用。

馬克一號最終還是被拆解了,但有一部分留在哈佛大學的Cabot Science Center。

第二代計算機

       第二代計算機按照前面的計算機階段的話就是處在電子管計算機。ENIAC(電子數字積分計算機)於1946年建成,相關詳細資訊如下:

埃尼阿克(ENIAC) 摘自“百度百科”

在美國賓夕法尼亞大學的莫爾電機學院揭幕典禮。它,就是世界上第一臺現代電子計算機“埃尼阿克”(ENIAC)。這個龐然大物佔地面積達170平方米,重達30噸。在揭幕儀式上,“埃尼阿克”為來賓表演了它的“絕招”----—分別在1秒鐘內進行了5000次加法運算和500次乘法運算,這比當時最快的繼電器計算機的運算速度要快1000多倍。這次完美的亮相,使得來賓們喝彩

f6428f8f56e72ce9513d9204

不已。

ENIAC:長30.48米,寬1米,佔地面積約63平方米,30個操作檯,約相當於10間普通房間的大小,重達30噸,耗電量150千瓦,造價48萬美元。它包含了17,468 真空管7,200水晶 二極體, 1,500 中轉, 70,000 電阻器, 10,000 電容器,1500繼電器,6000多個開關,每秒執行5000次加法或400次乘法,是繼電器計算機的1000倍、手工計算的20萬倍。

第三代計算機

       第一個積體電路雖然1958年9月就已經完成,但是真正投入到使用的時間是1963年,發明者是Kilby,他的發明帶來了工業革命。積體電路的出現,

使得像IBM 360這樣的大型機進一步增加了儲存和處理能力,也使更多的企業使用計算機,隨著時間的推移,大規模積體電路出現,這是第四代計算機

了。

小規模積體電路

根據積體電路規模的大小,通常將其分為SSI 、MSI 、LSI 、VLSI。分類的依據是一片積體電路晶片上包含的邏輯閘個數或元件個數

小規模積體電路:SSI (Small Scale Integration )

通常指含邏輯閘數小於10 門(或含元件數小於100個)。

第四代計算機

    當微處理器的出現,標誌著大規模/超大規模積體電路的出現。第四代計算機通過超大規模積體電路,提供更高的計算速度,面積卻比以往更小,1971

年11月,Intel釋出世界第一臺商用微處理器-Intel-4004,詳細資料:來自“維基百科”

4004是美國英特爾公司 (Intel) 推出的第一款微處理器,也是全球第一款微處理器;1971年11月15日釋出。

4004處理器的尺寸為3mm×4mm,外層有16隻針腳,內有2,300個電晶體,採用五層設計,10微米製程。

4004的最高時脈有740KHz,能執行4位元運算,支援8位元指令集及12位元位址集。當時脈是108KHz時,可以每秒運算6萬次,成本低於100美元。4004處理器的效能與早期電子計算機ENIAC相若。ENIAC是在1946年推出,機器體積龐大,需佔用一個房間。ENIAC擁有18000個真空管。

該款處理器原先是為一家名為 Busicom 的日本公司而設計,用來生產電算機。

總結

通過上面的講述,我們對計算機應該的發展史進行了回顧,我們不難發現,現在的CPU的處理能力遠遠超過了其他部件的發展速度,計算機的硬體發展

很迅速。下面我們來看看摩爾定律的定義:

摩爾定律是由英特爾(Intel)創始人之一戈登·摩爾(Gordon Moore)提出來的。其內容為:積體電路上可容納的電晶體數目,約每隔18個月便會增

加一倍,效能也將提升一倍,當價格不變時;或者說,每一美元所能買到的電腦效能,將每隔18個月翻兩倍以上。這一定律揭示了資訊科技進步的速

度。

從目前的Intel的多核或是AMD的真多核之爭,我們能夠看出來,目前的計算機仍然屬於第四代計算機,超大規模積體電路的階段。

網際網路的發展

      網際網路可以說是促進雲端計算進步的主要因素之一,正是由於網際網路的出現,才得以讓客戶通過瀏覽器來完成服務的使用,如果沒有出現網際網路,那

麼雲端計算也就沒有辦法完成呼叫。

      網際網路協議(IP) 這是目前網際網路上每臺計算機使用的標準通訊協議。其實早在20世紀30年代,Bush就提出了MEMEX的概念,該系統是自動化圖

書館系統,具體的簡介資訊如下:

     Memex是Vannevar Bush於1945年在其文章《As We May Think》中提出的一種“擴充套件儲存器(Memory-Extender)”設想。文中指出,

Memex是一個基於微縮膠捲儲存的“個人圖書館”,可以根據“交叉引用”來播放圖書和影片。它可以通過照相或觸控式螢幕感應來記錄新資訊。同時它還

提供在資料之間建立關聯的功能,讀者可以建立一些指向某些微縮膠捲片段的連結,並依照自己的喜好形成新的線性順序,甚至加上自己的補充或評

論。而且這些可以成為共享,他人只要鍵入建立連結的作者的索引程式碼,就可以追溯到這些關聯。

8c511fe97c8a0325b80e2d82

後來經過演化,出現了NCP協議,該協議在ARPANET主機上進行連結,而底層是通過IMP來完成的,

ARPNET是由一種通訊子網(Communication Subnet)和資源子網(Resource Subnet)組成的兩級結構的計算機網路。由介面報文處理機IMP

(Interface Message Processor)和它們之間互連的通訊線路一起負責主機Host之間的通訊任務,構成了通訊子網,實現資訊傳輸與交換。由通訊

子網互連的主機組成資源子網,它負責資訊處理、執行使用者應用程式、向網路使用者提供可共享的軟硬體資源。當某主機(例如H1)要與遠地另一主機

(例如H2)通訊、交換資訊。H1首先將資訊送至本地直接與其相連的IMP暫存,通過通訊線路沿著適當的路徑(按一定原則靜態或動態的選擇的)轉發

至下一IMP暫存,依次經過中間的IMP中轉,最終傳輸至遠地的目的IMP,並送入與之直接相連的目的主機。

如此,由IMP組成的通訊子網,完成資訊在通訊雙方各IMP之間的存貯--轉發(Store and forward)任務。採用這種方式,使通訊線路不為某對通

信雙方所獨佔,大大提高昂貴的通訊線路的利用效率。ARPANET中存貯--轉發的資訊基本單元是分組(Packet),它是將整個要交換的資訊報文

(Message)分成若干資訊分組,對每個分組按存貯--轉發的方式在通訊子網上傳輸,因此把這種以存貯--轉發方式傳輸分組的通訊子網又稱為分組交

換資料網(PSDN)。

我們來看看IMP的體系結構:

image

隨著NCP協議的進一步發展,在1983年1月1日ARPANET將其協議從NCP替換為更靈活和更強大的TCP/IP協議。NCP協議的過時,標誌著網際網路的興

盛開始。

      TCP/IP協議發展至今已經有很多版本的迭代,從一開始的(TCP V1)到現在的流行的IPv4,IPv6,當然未來IPv6是趨勢,當然我們必須知道,

TCP/IP的推廣過程也可以說是一波三折,一開始並不順利,也是隨著不斷的推廣,才得以迅速的普及和發展。

      IPv6於1995年1月提出,IPv6也被稱為下一代網際網路協議,目前我們的網際網路大部分的服務都是基於IPv4協議建立的,如果完成IPv6的推廣無疑

是艱難的工作。當然目前的很多硬體裝置都已經提供了對IPv6的支援。

      2012年之後,運營商將無法再獲得IPv4地址,業務持續發展和IPv4地址即將耗盡是他們必須面對的現實問題。面對地址短缺的現狀,IPv6是解決

地址問題的根本手段。然而,任何一項新技術從誕生到成熟都不可能一蹴而就,IPv4和IPv6將在相當長的一段時間內共存。因此,如何使IPv4平滑演進

到IPv6,如何保障IPv6的安全和服務質量,如何抓住三網融合、物聯網等新機遇,以及推動IPv6的發展與成熟等諸多問題,引起了業界的普遍關注。

      因此我們本文就不詳細闡述相關的內容,如果詳細闡述,那麼將會需要好幾篇的篇幅來說明,一方面本人對網路方面的內容也是理解的深度不夠,

就不班門弄斧了。

     1990年第一個web瀏覽器問世,其中整合了編輯器,可以建立超文字檔案,該瀏覽器與世界第一臺Web伺服器進行通訊,時間是1990年12月25日

     2007091417184422

     第一個web瀏覽器

     a284_server

知道世界上第一個網站嗎?Info.cern ch是世界上第一個網路伺服器的網址,執行在歐洲原子核研究委員會(CERN)的一臺NeXT計算機上。而第一個網頁地址是http://info.cern.ch/hypertext/WWW/TheProject.html,是有一個名叫Tim Berners-Lee的人建立的。
現在還可以訪問這個網站:http://info.cern.ch/
網頁的頂端還驕傲地寫著一行英文:The website of the world’s first-ever web server

     後續的相關內容就是瀏覽器的迅速發展,開始了瀏覽器大戰,我這裡就不詳細講述了。

虛擬化技術的演進

      伺服器虛擬化是指將一臺物理伺服器上同時執行多個獨立的虛擬作業系統的方法,這樣的方式,可以將計算機上的投資回報利益最大化,虛擬化的

提出產生於20世紀60年代,我們平時說的虛擬化技術,都是通過軟體來完成的,通過軟體來模擬一個獨立的作業系統環境,這樣可以使多個使用者同時

訪問一臺計算機資源,但是給客戶的感覺是獨立訪問自己的伺服器。圖形化的概括如下:

      image

      我們學過作業系統的應該知道,我們平時在使用印表機的時候,其實我們如果本地只有一臺印表機的時候,為了將這臺印表機提供給多個人同時使

用,這個時候,我們就會使用虛擬化的技術,只不過我們實際的實現機制是通過任務佇列,併發執行的而已,但是給使用者的感覺是自己在獨佔資源。

      Amazon雲端計算服務中的EC2提供的伺服器虛擬化技術中,就是通過不同的客戶建立不同的虛擬伺服器例項,通過自身提供的機器映象,然後在啟

動例項時,將機器映象拷貝到作業系統中,當使用者關閉虛擬伺服器時,EC2會撤銷例項,釋放伺服器資源,EC2是基於Xen虛擬化技術之上的應用。

      伺服器虛擬化的技術一般來說主要是針對以下的幾個方面的虛擬化:

      image

     詳細的虛擬化技術及相關講述將會在後面的虛擬化的技術中詳細的講述。

雲端計算的優勢和變革

     本節我們將會講述雲端計算給我們帶來了什麼,雲端計算帶來的優勢和變革是什麼?上章我們對比了雲端計算相比傳統的基礎設施方面的優勢對比,我們

這裡不再進行詳細的闡述,下面我們從其他的角度來分析雲端計算的優勢吧。

一、雲端計算的優勢

     雲端計算帶來的優勢,我們從下面幾個方面來講述

     1、優化資訊產業的佈局

     這個乍一看,的確有點大,雲端計算模式呢,從原來的企業的對資訊化服務的自給自足的模式轉變為部分服務由雲端計算提供商來提供的模式,IT產業

中將會出現更多的實力雄厚的雲端計算服務提供商,他們專門提供相應的服務,這些雲端計算服務提供商,他們通過提供相關領域的專家和業務人員,提供

更專業的服務,一般來說這些雲服務提供商都有非常雄厚的硬體和軟體實力,像目前的幾大雲服務提供商,無一不是這樣。

     2、推進了專業分工

     這個怎麼說呢?就是通過雲端計算服務提供商,一些中小型企業不用自己構建自己的資料中心,或者說是投入大量的基礎設施服務,只需要通過互聯

網訪問雲技術服務提供商提供的服務即可,自己也不需要考慮一些成本投入,或者維護投入等等。雲服務提供商會提供大量的專業人員和科研團隊來完

成這些工作,因此帶來了專業分工的優勢。 這裡的雲服務提供商的優勢是相對中小型企業來說,雲服務提供商更專業,更具有經驗。而且從投入成本的

角度來說,雲服務提供商的價格更低廉。除了帶來一些成本上的優勢,還包括雲端計算服務提供商提供了軟體管理方面的專業化,是同一個人的效率更

高,這也減少了人力成本的投入。

      雲端計算是專業分工更加明顯,進一步的優化了IT產業的佈局,通過一些手段,讓更多的企業專注自己的領域,揚長避短,減少內耗,同時也帶來了

商機。

      3、提高資源的利用率

      這個所謂的資源利用率一般是泛指的資源,對於資源的利用我們前面在伺服器虛擬化那塊專門的講述了雲端計算提供商通過伺服器的虛擬化,來達到

資源的儘可能的最大化的利用,從而提高投入產出比,帶來更高的利益,舉個簡單的例子我們來說明吧:

      例如現在有個網站,一年365天,只有逢年過節的時候,會出現100W的同時併發的情況,平時非逢年過節的日期時,也就是1000-10000的併發

數,這個時候,如果是企業自己投入基礎設施,構建資料中心的話,可能我們的投入如下:(這裡只是假設)

      一個負載均衡器

      8臺應用伺服器

      4個資料庫伺服器(3個讀伺服器、1個寫主伺服器)

      這裡的成本還是比較高的,上面的節假日的情況,勉強應付過來,平時一般1000-10000只要開太伺服器就可以應付的來的話,那麼我們可能平時

的情況下,我們只要這樣配置我們的伺服器:(括號內的為準)

      一個負載均衡器(暫不需要)

      8臺應用伺服器(1臺伺服器)

      4個資料庫伺服器(1個讀伺服器、1個寫主伺服器)

      無疑其他的硬體投入在大部分的時間是浪費的,而且如果我們採用叢集,RAID 的話,這將是非常大的自己投入,而且硬體每年都會產生折舊,這

就會衝擊我們的每年的利潤。

      使用雲的情況如下:

      非節假日

      從雲端計算服務提供商,購買如下服務:

      1臺應用伺服器資源

      1個讀伺服器、1個寫主伺服器

      按實際的執行的小時付費,如果只執行10小時一天那麼一年的費用就是 (10 * 365) * $/1.H=TotalPay。

      節假日的時候

      只要為我們新擴充的資源單獨的付費就可以。

      一個負載均衡器

      7臺應用伺服器

      2個資料庫伺服器

      我們這裡要為上面的硬體資源單獨付費,採用的計費方式與上面的非節假日的形式相仿,這裡我們就可以看出,使用雲技術服務的方式,可以為我

們節省很多的成本,我們只為我們需要的並且使用的資源付費,如果沒使用的資源,我們可以不付費。

      4、降低管理開銷

      雲端計算提供商本身提供給客戶了一些方便的管理功能,內建了一些自動化的管理,對應用管理的動態,自動化,高效率是雲端計算的核心,因此,雲

計算要保證當使用者建立一個服務時,用最短的時間和最少的操作來滿足使用者的需求,當使用者停用某個服務操作時,需要提供自動完成停用的操作,並行

回收相應的資源,當然,由於虛擬化技術在雲端計算中的大量應用,提供了很大的靈活性和自動化,降低了使用者對應用管理的開銷。雲端計算平臺會根據用

戶的應用的業務需求,來動態的增減資源分配,完成資源的動態管理,並且對使用者增減模組時的自動資源配置,自動資源釋放等,包括一些自動的冗餘

備份,安全性,當機的自動恢復等。

二、雲端計算帶來的變革

      上節我們講述了雲端計算帶來的幾個優勢,我們本節來看看,雲端計算帶來的IT產業的變革,我們來分析下,作為IT產業,都有什麼樣的角色,具體的

角色的職責是什麼,通過上下的層次關係基本上有所瞭解,我們看圖就明白了。

      image

      在圖的中間,我們看到了,就是雲提供商是這個產業的核心,所以雲提供商在雲端計算中處於核心地位,相信隨著標準的定製及產業的發展,雲端計算

提供越來越多的服務。

後續

      下一篇我們就開始講述虛擬化方面內容了,希望大家看完本章內容後,如果有什麼意見和建議,請您提出來,我在下篇書寫的時候,會及時的改

進,謝謝您的意見,由於個人水平有限,錯誤或不足之處還請多多指點。

參考文獻

1、維基百科:http://zh.wikipedia.org/zh/%E9%A6%AC%E5%85%8B%E4%B8%80%E8%99%9F

2、百度百科:http://baike.baidu.com/view/22486.htm

3、百度百科:http://baike.baidu.com/view/1343946.htm

相關文章