編輯推薦
《深入理解雲計算:基本原理和應用程序編程技術》特色:
·詳細解析虛擬化雲計算環境中應用程序的設計和實現方法。
·提供實驗和測試的真實雲係統環境——Aneka雲平颱。
·展示豐富的雲應用實例,涉及科學、商業、能效等眾多方麵。
·配套網站提供多種免費教輔資源。
內容簡介
《深入理解雲計算:基本原理和應用程序編程技術》介紹雲計算基本原理和雲應用開發方法。未來的應用開發將不再依賴於單一計算機,而是在雲數據中心的一颱或多颱虛擬服務器上進行,並且可以在任何時間、從任何地點訪問。未來的開發者必須掌握雲計算技術,包括並行編程、高性能計算和數據密集型係統。本書提供與這些技術密切相關的實例、練習以及Aneka雲平颱實驗環境。
精彩書評
★Buyya等人帶我們踏上雲計算的徵途,一路從理論到實踐、從曆史到未來、從計算密集型應用到數據密集型應用,激發我們産生學術研究興趣,並指導我們掌握工業實踐方法。從虛擬化和綫程理論基礎,到雲計算在基因錶達和客戶關係管理中的應用,都進行瞭深入的探索。
——DejanMilojicic,HP實驗室,2014年IEEE計算機學會主席 目錄
MasteringCloudComputing:FoundationsandApplicationsProgramming
齣版者的話
譯者序
前言
緻謝
第一部分基礎
第1章導論2
1.1雲計算簡介2
1.1.1雲計算構想3
1.1.2雲計算定義4
1.1.3進一步瞭解雲計算6
1.1.4雲計算參考模型7
1.1.5特性和優勢9
1.1.6麵臨的挑戰10
1.2雲計算起源10
1.2.1分布式係統11
1.2.2虛擬化12
1.2.3Web2.013
1.2.4麵嚮服務的計算14
1.2.5效用計算15
1.3構建雲計算環境16
1.3.1應用程序開發16
1.3.2基礎設施和係統開發16
1.3.3雲計算平颱和技術17
本章小結18
習題19
第2章並行計算與分布式計算原理20
2.1計算時代20
2.2並行計算與分布式計算21
2.3並行計算基本要素21
2.3.1什麼是並行處理21
2.3.2並行處理硬件架構22
2.3.3並行編程方法25
2.3.4並行性的級彆25
2.3.5注意事項26
2.4分布式計算基本要素26
2.4.1通用概念和定義27
2.4.2分布式係統組件27
2.4.3分布式計算架構模式28
2.4.4進程間通信模型35
2.5分布式計算技術37
2.5.1遠程過程調用37
2.5.2分布式對象框架38
2.5.3麵嚮服務的計算42
本章小結48
習題48
第3章虛擬化50
3.1簡介50
3.2虛擬化環境特點51
3.2.1更強的安全性52
3.2.2執行管理53
3.2.3可移植性54
3.3虛擬化技術分類54
3.3.1執行虛擬化54
3.3.2其他類型的虛擬化61
3.4虛擬化和雲計算62
3.5虛擬化的利與弊64
3.5.1虛擬化技術的優點64
3.5.2虛擬化技術的缺點64
3.6技術實例66
3.6.1Xen:半虛擬化66
3.6.2VMware:完全虛擬化67
3.6.3微軟Hyper-V72
本章小結75
習題75
第4章雲計算架構76
4.1簡介76
4.2雲計算參考模型76
4.2.1架構76
4.2.2基礎設施即服務和硬件即服務78
4.2.3平颱即服務80
4.2.4軟件即服務83
4.3雲的種類85
4.3.1公共雲85
4.3.2私有雲86
4.3.3混閤雲88
4.3.4社區雲90
4.4雲計算經濟特性91
4.5雲計算麵臨的挑戰93
4.5.1雲計算定義93
4.5.2雲計算互操作性和標準93
4.5.3可擴展性和容錯性94
4.5.4安全、可信和隱私94
4.5.5組織方麵95
本章小結95
習題95
第二部分雲應用編程與Aneka平颱
第5章Aneka:雲應用平颱98
5.1框架概述98
5.2Aneka容器結構100
5.2.1Aneka平颱基礎:平颱抽象層101
5.2.2構造服務101
5.2.3基礎服務103
5.2.4應用服務105
5.3構建Aneka雲平颱106
5.3.1基礎設施組織107
5.3.2邏輯組織107
5.3.3私有雲部署模式109
5.3.4公共雲部署模式110
5.3.5混閤雲部署模式111
5.4雲編程和雲管理112
5.4.1AnekaSDK112
5.4.2管理工具115
本章小結116
習題116
第6章並行計算:綫程編程117
6.1單機並行計算簡介117
6.2綫程編程應用118
6.2.1什麼是綫程119
6.2.2綫程API120
6.2.3綫程並行計算技術121
6.3Aneka多綫程方式130
6.3.1綫程編程模型簡介131
6.3.2Aneka綫程和普通綫程132
6.4Aneka綫程編程應用135
6.4.1Aneka綫程應用模型135
6.4.2域分解:矩陣乘法136
6.4.3功能分解:Sine、Cosine、Tangent142
本章小結147
習題148
第7章高吞吐量計算:任務編程149
7.1任務計算149
7.1.1任務特性150
7.1.2計算類彆150
7.1.3任務計算框架151
7.2基於任務的應用模型152
7.2.1高度並行應用153
7.2.2參數化應用153
7.2.3消息傳遞接口應用155
7.2.4具有任務依賴性的
工作流應用156
7.3基於任務的Aneka編程159
7.3.1任務編程模型159
7.3.2用任務模型開發應用160
7.3.3開發參數化應用174
7.3.4管理工作流176
本章小結178
習題179
第8章數據密集型計算:MapReduce編程181
8.1什麼是數據密集型計算181
8.1.1數據密集型計算特性182
8.1.2未來的挑戰182
8.1.3曆史背景183
8.2數據密集型計算技術186
8.2.1存儲係統186
8.2.2編程平颱193
8.3AnekaMapReduce編程199
8.3.1MapReduce編程模型簡介199
8.3.2應用實例216
本章小結226
習題226
第三部分工業雲平颱與新進展
第9章工業雲平颱228
9.1亞馬遜Web服務228
9.1.1計算服務229
9.1.2存儲服務232
9.1.3通信服務239
9.1.4其他服務240
9.1.5總結241
9.2榖歌AppEngine241
9.2.1架構和核心概念241
9.2.2應用程序生命周期245
9.2.3成本模型247
9.2.4結論247
9.3微軟Azure248
9.3.1Azure核心概念248
9.3.2SQLAzure252
9.3.3WindowsAzure平颱設備253
9.3.4結論253
本章小結254
習題254
第10章雲應用256
10.1科學應用256
10.1.1醫療保健:雲心電圖分析256
10.1.2生物學:蛋白質結構預測257
10.1.3生物學:基因錶達數據用於癌癥診斷分析258
10.1.4地球科學:衛星圖像處理259
10.2商業和消費應用260
10.2.1CRM和ERP260
10.2.2效率型應用262
10.2.3社交網絡265
10.2.4媒體應用265
10.2.5多人在綫遊戲268
本章小結269
習題269
第11章雲計算高級主題270
11.1雲能效270
11.2基於市場的雲管理273
11.2.1麵嚮市場的雲計算273
11.2.2MOCC參考模型274
11.2.3支持MOCC的技術和實現278
11.2.4結論282
11.3雲聯盟和互聯雲282
11.3.1特性和定義282
11.3.2雲聯盟棧283
11.3.3關注點288
11.3.4雲聯盟技術301
11.3.5結論304
11.4第三方雲服務304
11.4.1MetaCDN304
11.4.2SpotCloud306
本章小結307
習題307
參考文獻309
索引317
精彩書摘
《深入理解雲計算:基本原理和應用程序編程技術》:
雲計算在企業中實現普及之前,花費在IT基礎設施和軟件上的預算構成瞭中型和大型企業的主要成本支齣。許多企業都擁有一個小型或中型的數據中心,並且涉及維護、電力和冷卻方麵的運營成本,以及維護IT部門和IT技術支持的成本。此外,還有其他購買軟件的昂貴費用。采用雲計算方式後,這些成本顯著降低,甚至完全消失。其中雲計算模式的優勢之一,是將先前用於購買硬件和軟件的資本成本轉移為租用基礎設施和訂閱軟件的費用。這些費用可以根據業務需求和企業的情況得到更好的控製。雲計算還降低瞭管理和維護成本。也就是說,不需要或很少需要管理人員去維護雲基礎設施。同時,IT技術支持人員的成本也降低瞭。企業將不會麵臨IT資源的貶值問題,因為在這種情況下,IT需求都由雲計算來提供服務,不存在固定資産摺舊。
雲計算為企業節約成本的多少與使用雲計算服務的具體方案有關,還與它們為企業産生利潤與方式有關。小型企業創業初期可以在以下方麵采用雲計算模式,例如:
IT基礎設施。
軟件開發。
客戶關係管理(CRM)和企業資源規劃(ERP)。
在這種情況下有可能完全消除資本成本,因為沒有初始IT投入。如果企業中已經有相當規模的IT資産,情況便會完全不同。此時,雲計算(特彆是IaaS解決方案)可以幫助管理企業短期內所産生需求的計劃外資本成本,將這些費用轉變成運營成本。例如,租用IT基礎設施有助於更有效地管理高峰負荷而沒有額外資本支齣。隻要增加的負載並不使用額外的資源,這些資源就可以釋放,這樣與資源相關的成本就沒有瞭。這是大多數企業采用的雲計算模型,因為很多企業已經擁有IT設施。另一種方式是當投入的IT資産貶值並需要更換時,緩慢地過渡到雲計算解決方案。在這兩種情況之間,有各種各樣的雲計算方案可以幫助企業創造利潤。
……
前言/序言
譯者序
MasteringCloudComputing:FoundationsandApplicationsProgramming
雲計算是在傳統計算機科學基礎上發展起來的新興技術。隨著移動設備的大量普及、網絡與計算成本的大幅降低以及用戶計算需求的不斷提升,傳統的PC計算模式必將嚮以雲數據中心為核心的雲計算模式轉移。同時,雲計算技術所提供的強大的計算能力、低廉的成本以及按需服務的模式將會從根本上推動計算密集型應用的進一步發展,以及全球計算能力的全方位釋放。
由於涉及計算機科學領域的專業知識和技術,所以對普通研發人員而言,雲計算技術頗有些陽春白雪的意味。究其根源,雲計算技術是學術研究與工程開發的集閤體。一方麵,研究人員在有好的想法或者概念的情況下,需要一個良好的雲計算模型與原型係統來驗證所提齣的方法;另一方麵,工程人員則由於專業背景知識的缺乏,而很難進入真正的雲計算技術開發領域。
作為雲計算技術領域的先驅者和領導者,本書作者——澳大利亞墨爾本大學計算機科學係著名教授RajkumarBuyya,長期從事網格計算及雲計算技術研究,研究成果得到學術界與工業界的廣泛認可。本書集成瞭Buyya教授在雲計算領域多年的研究成果,從雲計算基礎、應用平颱和編程技術三個方麵,利用11個章節詳細介紹雲計算技術的起源、發展、核心技術及其範式、典型雲計算平颱以及編程技巧等重要內容。本書內容豐富、深入淺齣,並包含配套習題,適閤不同層次的雲計算技術研發人員使用。同時,本書清晰的思路、嚴謹的技術框架和詳盡的實例講解也使其成為適用於計算機相關學科本科生及研究生教學的不可多得的優秀教材。
參與本書翻譯工作的人員均多年從事雲項目相關工作,對雲計算前沿問題的研究及教學都有較深刻的理解。本書前言、第1~4章及索引由劉麗(北京科技大學自動化學院副教授)翻譯,第5~8章由米振強(北京科技大學計算機與通信工程學院講師)翻譯,第9~11章由熊曾剛(湖北工程學院計算機與信息科學學院教授)翻譯,全書由劉麗統稿。北京科技大學的研究生張淼、翟穎奇、夏毓嫻、徐安琪、謝翔、潘夢圓、李萌、何苗、陸源等同學協助進行資料收集,並參與瞭部分章節的初稿翻譯工作。
感謝機械工業齣版社引進此書並為本書的齣版付齣大量努力,使IT從業人員和計算機相關專業學生從中受益。特彆感謝本書作者RajkumarBuyya教授對翻譯過程中遇到的問題進行解答。
需要說明的是,本書翻譯工作和雲計算研究工作得到以下項目的資助和支持:國傢自然科學基金項目“互聯雲環境中基於效用模型的跨雲協同服務優化研究(No.61370132)”、“大數據環境下基於視覺主題模型的視覺數據分類方法研究(No.61370092)”、“互聯雲環境下麵嚮數據中心的服務資源分配與調度機製研究(No.61472033)”,國傢高技術研究發展計劃(863計劃)項目“城市多模式數據係統互聯技術與支撐環境(No.2013AA01A601)”,以及湖北省自然科學基金項目“雲計算環境下內容語義信任度量與評估方法研究
(No.2013CFC005)”和湖北省高等學校優秀中青年科技創新團隊計劃項目“雲計算環境下智能信息處理技術研究(No.T201410)”。
由於譯者對雲計算相關變革性技術的理解有待加深,而且許多新齣現的專業術語還沒有公認的譯法,所以在翻譯過程中難免齣現一些不夠清楚的錶述,若有不妥之處,懇請廣大讀者批評指正,電子郵箱liuli@ustb.edu.cn。
劉麗
2015年1月
前言
MasteringCloudComputing:FoundationsandApplicationsProgramming
隨著互聯網與Web技術的快速發展和普及,以及手持計算機、移動設備、傳感器設備功能的不斷強大,人與人之間的交互方式、商業行為以及獲取和提供服務的模式都在發生變化。低成本的計算與通信驅動瞭從單一計算方式嚮以數據中心為核心的計算方式的轉變。盡管並行與分布式計算在IT行業已經存在多年,但其新的形式——多核和雲計算為IT行業帶來瞭徹底的變革。這種發展趨勢將促使IT行業從PC應用開發模式轉變為支持數百萬用戶同時使用軟件的雲數據中心模式。
計算嚮商業服務模式變革,這種計算服務類似於傳統的公共基礎設施服務,如水、電、煤氣和電話。因此IT服務被當作與水、電、煤氣和電話一樣的“計算公共基礎設施”,通過共有傳輸網絡來交付使用並計費。在這種計算環境下,用戶按需獲取服務,而不管該服務由哪裏提供。一些計算模式已經提齣交付這種效用計算服務的構想,雲計算是最新齣現的實現這一目標的計算模式。
雲計算如今已成為IT行業的又一個流行術語。眾多IT廠商承諾提供存儲、計算及應用托管服務,其服務範圍涵蓋幾大洲,並能提供基於服務等級協議(ServiceLevelAgreement,SLA)的服務性能保障和運行時間承諾。雲服務模式允許用戶基於訂閱方式訪問基礎設施、平颱及應用,也就是通常所說的基礎設施即服務(IaaS)、平颱即服務(PaaS)、軟件即服務(SaaS)。這種服務模式大大降低瞭計算和應用的成本,但是要實現應用和服務開發及交付的一緻性、可擴展性、可靠性是極其復雜的。
已有一些雲計算技術和雲平颱産品,如榖歌AppEngine、微軟Azure和ManjrasoftAneka。榖歌AppEngine利用大量IT基礎設施為托管的Web應用提供可擴展的運行環境。微軟Azure為在雲計算環境中開發和部署應用提供瞭大量Windows服務實例。ManjrasoftAneka能夠靈活地創建雲應用並將其部署在各種基礎設施上,如亞馬遜公共雲EC2。
隨著應用開發從PC嚮雲數據中心遷移,需要大量掌握雲計算技能的人員。麵對這一挑戰,大學教育在培養下一代IT專業人員方麵發揮瞭重要作用,幫助學生學習和掌握新的相關技術與工具。這樣,大學需要以較小的投入建立雲計算教學環境,而ManjrasoftAneka比較適閤建立這種雲應用平颱,它允許用戶利用已有計算機網絡組建私有雲/企業雲,提供軟件開發工具包(SDK),支持多種編程模型(如綫程、任務、MapReduce)的應用編程接口(API),支持在多核服務器、私有雲、公共雲等不同基礎設施上無縫地部署和執行應用。
如今,專業開發人員需要創建雲應用和服務。雲計算研究人員、從業者以及供應商努力讓用戶瞭解雲計算的好處並充分利用其潛在能力。然而,由於雲計算是一種新興的計算範式,所以對於雲計算的精確定義,不同的雲計算專傢會給齣不同的答案。因此,盡管現在比以往更好地實現瞭真正的效用計算,但是,與雲計算服務方交互的復雜性使得對於雲計算的認可和應用還隻限於領域專傢。本書旨在用簡單的方式嚮讀者講解雲計算基礎知識、技術及編程技能,讓更多普通程序員和軟件工程師能輕鬆地開發雲應用程序。
本書結構
本書介紹雲計算的基本原理及相關範式,闡述雲計算架構模型中虛擬化技術的概念,並展示包括Aneka雲計算應用平颱在內的著名雲計算技術産品,詳細講解並行計算、高吞吐量計算和數據密集型計算的範式,以及如何將這些範式應用於雲應用程序開發。本書還研究瞭來自科學界、工程界、遊戲和社交網絡領域的多個應用案例,闡述瞭各應用案例的架構以及雲計算技術的應用方式。這些案例研究有助於讀者對雲計算原理的理解。最後,本書詳細闡述瞭許多源於雲計算快速應用的開放性研究問題和機遇,我們希望這有助於激發讀者在未來的研發過程中解決這些問題。
全書分為三部分,共11章:
第一部分基礎
第1章導論
第2章並行計算與分布式計算原理
第3章虛擬化
第4章雲計算架構
第二部分雲應用編程與Aneka平颱
第5章Aneka:雲應用平颱
第6章並行計算:綫程編程
第7章高吞吐量計算:任務編程
第8章數據密集型計算:MapReduce編程
第三部分工業雲平颱與新進展
第9章工業雲平颱
第10章雲應用
第11章雲計算高級主題
本書將引導讀者進入雲計算領域,從理論基礎講解開始,讓學生和專業人員通過在Aneka平颱上實際開發雲應用程序來理解和掌握相關概念。第三部分介紹業界其他雲技術和解決方案(亞馬遜Web服務、榖歌AppEngine和微軟Azure)及其實際應用,闡述雲計算的發展趨勢和發展前景。
讀者對象
由於雲計算迅速崛起為一種主流計算模式,所以必須深入理解其核心概念和特性,並掌握如何設計和實現雲計算的應用程序與係統。這是如今的軟件架構師、工程師和開發人員應具有的基本技能,因為多數應用都將被遷移到雲環境。隨著技術的成熟,具備此技能尤其重要。本書涵蓋雲計算的起源、理論和實際開發技術,讀者對象更廣泛,可作為研究生、IT從業者、開發人員、工程師等設計和實現雲
深入理解雲計算:基本原理和應用程序編程技術 [Mastering Cloud Computing: Foundations and Applica] 下載 mobi epub pdf txt 電子書 格式
深入理解雲計算:基本原理和應用程序編程技術 [Mastering Cloud Computing: Foundations and Applica] 下載 mobi pdf epub txt 電子書 格式 2024
深入理解雲計算:基本原理和應用程序編程技術 [Mastering Cloud Computing: Foundations and Applica] mobi epub pdf txt 電子書 格式下載 2024