【賽迪網報道】雲端運算是並行計算(Parallel Computing)、分散式運算(Distributed Computing)和格線運算(Grid Computing)的發展,或者說是這些計算科學概念的商業實現。雲端運算是虛擬化(Virtualization)、效用計算(Utility Computing)、將基礎設施作為服務IaaS(Infrastructure as a Service)、將平台作為服務PaaS(Platform as a Service)和將軟體作為服務SaaS(Software as a Service)等概念混合演化並躍升的結果。為了區分服務於應用,我們對服務的分析通過雲端運算服務類型來講述。雲端運算按照服務類型大致可以分為三類:將基礎設施作為服務IaaS、將平台作為服務PaaS和將軟體作為服務SaaS。
GAE
Google的雲端運算提供的服務1所示:
圖 1 Google 雲端運算平台服務
在中,還有Google提供的很多服務沒有一一列舉出來,但是我們可以瞭解到在Google雲端運算平台上,Google雲端運算的SaaS層是Google Docs、Gmail、Google Earth、New search、Checkout、Google wave、Google Gears;Goole雲端運算的PaaS層是Google App Engine,GAE。
軟體+服務
根據微軟公司發布的《微軟雲端運算解決方案白皮書》所指,微軟雲端運算平台提供的服務2所示:
圖2 微軟雲端運算平台服務
如上所述,Google 的雲端運算服務是建立在GAE基礎上的,微軟雲端運算則是建立在Windows Azure基礎上的。Google傾向於藉助其互連網技術來發展雲端運算技術,而微軟則進行資源整合,如微軟剛發布了Office 2010,同時也提供了線上的Office服務,這是微軟和Google Docs一大競爭的表現。
Google還在其雲端運算基礎設施之上建立了一系列新型網路應用程式。由於借鑒了非同步網路資料轉送的Web 2.0技術,這些應用程式給予使用者全新的介面感受以及更加強大的多使用者互動能力。其中典型的Google雲端運算應用程式就是Google推出的與Microsoft Office軟體進行競爭的Docs網路服務程式。Google Docs是一個基於Web的工具,它有跟Microsoft Office相近的編輯介面,有一套簡單易用的文檔許可權管理,而且它還記錄下所有使用者對文檔所做的修改。Google Docs的這些功能令它非常適用於網上共用與協作編輯文檔。Google Docs甚至可以用於監控責任清晰、目標明確的項目進度。當前,Google Docs已經推出了文檔編輯、試算表、投影片示範、議程管理等多個功能的編輯模組,能夠替代Microsoft Office相應的一部分功能。值得注意的是,通過這種雲端運算方式形成的應用程式非常適合於多個使用者進行共用以及協同編輯,為一個小組的人員進行共同創作帶來很大的方便性。Google雲端式計算平台提供的應用3所示:
圖3 Google雲端運算應用
微軟的雲端運算應用既有針對消費者的服務,也有針對企業的服務。微軟針對消費者提供了包括 Windows Live、Office Live、Live Messenger、Bing以及 Xbox Live等在內的多種服務。上述服務使用者都已在大量使用,比如 Live Meeting每年使用者使用的線上會議時間長度達 50 億分鐘;Windows Live ID 每天使用者登入使用人數達 10 億人;Exchange Hosted Services 每天處理電子郵件資訊 20 至 40 億條等。微軟針對企業使用者的服務為 Microsoft Online Services,這是一整套由微軟託管營運的向使用者提供訂閱服務的企業溝通協作解決方案,該企業級服務解決方案能夠協助各種經營規模的企業提高業務經營效率,而無需企業自己維護管理複雜的 IT基礎架構。針對企業的服務主要包括 Exchange Online, SharePoint Online, Office communicator Online, Office Live Meeting, Dynamics CRM Online 等。
開發環境:Python 、Java和.Net開發平台
Google App Engine 是一個開發、託管網路應用程式的平台,使用 Google 管理的資料中心。它在 2008 年 4 月發布了第一個 beta 版本。Google App Engine 使用了雲端運算技術。它跨越多個伺服器和資料中心來虛擬化應用程式。Google App Engine 在使用者使用一定的資源時是免費的。支付額外的費用可以獲得應用程式所需的更多的儲存空間、頻寬或是 CPU 負載。當前,Google App Engine 支援的程式設計語言是 Python 和 Java (通過擴充,可以支援其他 JVM 語言,諸如 Groovy、JRuby、Scala 和 Clojure),支援 Django、WebOb、PyYAML 的有限版本。
對於開發人員而言,Windows Azure已經建立起一個簡單而快速的系統,最重要的是它擁有著標準的模型,是我們步入“雲端運算”時代的捷徑。開發人員可以根據自己的需要選擇第二層功能來使用,比如資料庫,商務工具,甚至是第三方軟體提供的功能。Windows Azure雲端運算平台為開發人員提供了靈活性和可開發性,如提供了對Java、PHP、Ruby、Eclipse的一些SDK,同時還需要考慮利用目前現有的技能、工具和技術,比如微軟.NET架構、Visual Studio。使用Windows Azure Tools for Visual Studio,我們可以為Windows Azure建立,調試和部署服務和應用程式。Azure服務平台目前能夠執行編譯.NET Framework應用程式,並直接支援ASP.NET 應用程式架構以及配合將其他應用程式轉移到雲端運算平台上。同時,也可以利於Visual Studio 2010對我們的服務和應用程式進行調試。另外,我們可以利用Visual Studio 2010將我們建立的服務打包,然後通過Windows Live Developer Portal部署到Windows Azure雲端運算平台上。
雲端運算時代的到來,對於開發人員最大的影響就是,如果還像以前一樣只和一台電腦和有限的儲存打交道已遠遠不夠,以前開發的軟體或許只在單機上運行就可以了。但云時代的工程師應該更多的掌握分散式運算的基本原理和開發方法,有能力掌握用於分散式運算的協議或語言,開發出可以運行在幾百台、幾千台甚至幾萬台電腦上的應用程式,並用該程式管理分布在不同資料中心的海量存放裝置,軟體執行的速度需要非常快。
賽迪地址:http://news.ccidnet.com/art/32857/20100525/2069577_3.html