《深入理解云计算 基本原理和应用程序编程技术》PDF下载

  • 购买积分:12 如何计算积分?
  • 作  者:(澳)拉库马·布亚,(澳)克里斯坦·维奇拉,(印)S.泰马莱·赛尔维著;刘丽,米振强,熊曾刚译
  • 出 版 社:北京:机械工业出版社
  • 出版年份:2015
  • ISBN:9787111496588
  • 页数:341 页
图书介绍:本书从云基础知识、云应用编程和云平台三个方面,介绍云计算的起源、发展、核心技术、编程技巧和实际应用,基于Aneka平台详细讲解并行计算、高吞吐量计算和数据密集型计算的范式。此外,还涉及亚马逊Web服务、谷歌AppEngine和微软Azure三大云平台,以及云计算在科学、工程、游戏、社交等领域的最新应用。本书内容严谨、结构清晰、实例丰富,既可作为高等院校计算机相关专业的教材,也适合云技术研发人员阅读参考。

第一部分 基础 2

第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.3 Web 2.0 13

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.1 Xen:半虚拟化 66

3.6.2 VMware:完全虚拟化 67

3.6.3 微软Hyper-V 72

本章小结 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平台 98

第5章 Aneka:云应用平台 98

5.1 框架概述 98

5.2 Aneka容器结构 100

5.2.1 Aneka平台基础:平台抽象层 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.1 Aneka SDK 112

5.4.2 管理工具 115

本章小结 116

习题 116

第6章 并行计算:线程编程 117

6.1 单机并行计算简介 117

6.2 线程编程应用 118

6.2.1 什么是线程 119

6.2.2 线程API 120

6.2.3 线程并行计算技术 121

6.3 Aneka多线程方式 130

6.3.1 线程编程模型简介 131

6.3.2 Aneka线程和普通线程 132

6.4 Aneka线程编程应用 135

6.4.1 Aneka线程应用模型 135

6.4.2 域分解:矩阵乘法 136

6.4.3 功能分解:Sine、Cosine、Tangent 142

本章小结 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.3 Aneka MapReduce编程 199

8.3.1 MapReduce编程模型简介 199

8.3.2 应用实例 216

本章小结 226

习题 226

第三部分 工业云平台与新进展 228

第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 谷歌AppEngine 241

9.2.1 架构和核心概念 241

9.2.2 应用程序生命周期 245

9.2.3 成本模型 247

9.2.4 结论 247

9.3 微软Azure 248

9.3.1 Azure核心概念 248

9.3.2 SQL Azure 252

9.3.3 Windows Azure平台设备 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.1 CRM和ERP 260

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.2 MOCC参考模型 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.1 MetaCDN 304

11.4.2 SpotCloud 306

本章小结 307

习题 307

参考文献 309

索引 317