《云计算核心技术剖析》PDF下载

  • 购买积分:11 如何计算积分?
  • 作  者:吴朱华编著
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2011
  • ISBN:9787115252197
  • 页数:288 页
图书介绍:本书深入分析现有云计算领域主要的一些核心技术和产品,如Google App Engine、Salesforce Force.com、系统虚拟化和云安全等,并且选取分布式数据库为方向,以YunTable为实例,来给演示如何手动编写和设计一个云计算产品。

第一部分 理论篇 2

第1章 云计算的概念 2

1.1 什么是云计算 2

1.1.1 云计算的优点 2

1.1.2 云计算的特点 3

1.2 云计算的由来 4

1.2.1 思想演化 4

1.2.2 技术支撑 5

1.3 云计算的诞生 7

1.3.1 SaaS的诞生 7

1.3.2 “IT不再重要”的发表 7

1.3.3 Google的三大核心技术 7

1.3.4 AWS的推出 8

1.3.5 IBM和Google的合作 8

1.4 云计算的成长 8

1.5 云计算的影响 10

1.5.1 服务器供应商 10

1.5.2 软件开发商 11

1.5.3 云终端供应商 11

1.5.4 云供应商 11

1.5.5 整个IT产业 12

1.6 云计算的使用场景 12

1.6.1 IDC云 12

1.6.2 企业云 12

1.6.3 云存储系统 12

1.6.4 虚拟桌面云 13

1.6.5 开发测试云 13

1.6.6 大规模数据处理云 13

1.6.7 协作云 13

1.6.8 游戏云 14

1.6.9 HPC云 14

1.6.10 云杀毒 14

第2章 云计算的架构 16

2.1 云的架构 16

2.1.1 SaaS 17

2.1.2 PaaS 19

2.1.3 IaaS 21

2.1.4 云管理层 22

2.1.5 架构示例 25

2.2 云的4种模式 27

2.2.1 公有云 27

2.2.2 私有云 28

2.2.3 混合云 30

2.2.4 行业云 30

第二部分 产品与技术篇 34

第3章 Google App Engine 34

3.1 Google的云计算产品 34

3.1.1 SaaS层 34

3.1.2 PaaS层 36

3.1.3 IaaS层 36

3.1.4 云客户端 36

3.2 Google的核心技术 39

3.2.1 分布式基础设施 39

3.2.2 分布式大规模数据处理 42

3.2.3 分布式数据库技术 43

3.2.4 数据中心优化技术 45

3.3 Google的设计思想和整体架构 46

3.3.1 设计思想 46

3.3.2 整体架构 48

3.4 Google App Engine简介 50

3.4.1 历史 50

3.4.2 功能 51

3.4.3 使用流程 51

3.4.4 主要组成部分 51

3.4.5 编程模型 54

3.4.6 限制和资费 55

3.5 Google App Engine的使用 56

3.5.1 例子 56

3.5.2 搭建环境 56

3.5.3 初始化项目 56

3.5.4 编写数据库代码 58

3.5.5 添加Web处理方法 59

3.5.6 测试和部署 60

3.6 Google App Engine的架构 62

3.6.1 设计理念 62

3.6.2 架构 62

3.6.3 流程 63

3.6.4 Python版和Java版的区别 64

3.7 本地测试服务器的设计 64

3.7.1 架构 64

3.7.2 工作流程 65

3.8 Datastore的设计 66

3.8.1 使用方面 66

3.8.2 实现方面 67

3.9 总结 69

3.9.1 注意点 69

3.9.2 最佳实践 69

3.9.3 适用场景 70

3.9.4 对未来的期望 70

第4章 Salesforce Force.com 72

4.1 Salesforce简介 72

4.1.1 公司历史 72

4.1.2 Salesforce的整体架构 73

4.1.3 Force.com 73

4.2 多租户的介绍 74

4.2.1 概念 74

4.2.2 多租户技术的优缺点 75

4.2.3 常见的多租户模型 75

4.3 Force.com的多租户架构(上) 76

4.3.1 总体架构 76

4.3.2 元数据驱动 77

4.3.3 应用服务器 77

4.3.4 共享数据库 78

4.4 Force.com的多租户架构(下) 78

4.4.1 应用服务器的模块 78

4.4.2 数据库表的设计 79

4.4.3 Apex 80

4.5 总结 81

4.5.1 设计理念 81

4.5.2 经验教训 81

第5章 系统虚拟化 83

5.1 系统虚拟化简介 83

5.1.1 虚拟化的概念 83

5.1.2 系统虚拟化的概念 83

5.1.3 系统虚拟化技术的分类 84

5.1.4 系统虚拟化的用处 87

5.2 x86虚拟化技术 88

5.2.1 虚拟机的3大特征 88

5.2.2 为什么x86架构很难被虚拟化 88

5.2.3 CPU虚拟化 89

5.2.4 内存虚拟化 89

5.2.5 I/O虚拟化 90

5.2.6 总结与预测 90

5.3 VMware vSphere的简介 91

5.3.1 VMware的思路 91

5.3.2 VMware vSphere 92

5.4 VMware ESX的架构 95

5.4.1 Service Console 95

5.4.2 VMKernel 96

5.5 虚拟网络 99

5.5.1 简介 99

5.5.2 虚拟网卡 100

5.5.3 虚拟交换机 101

5.6 动态迁移背后的奥秘 105

5.6.1 动态迁移的实现机制 105

5.6.2 动态迁移今后的挑战 106

5.7 虚拟器件 107

5.7.1 虚拟器件的定义 106

5.7.2 虚拟器件的主要组成部分 108

5.7.3 虚拟器件的生命周期 109

5.7.4 虚拟器件的好处 110

5.7.5 虚拟器件的不足之处 111

5.7.6 业界支持 112

5.7.7 虚拟器件与云计算 112

5.8 OVF协议 112

5.8.1 OVF信封 113

5.8.2 OVF环境文件 113

5.8.3 使用流程 114

5.9 VMware的云计算计划 115

5.9.1 VMwarev Cloud Express 115

5.9.2 VMwarev Cloud Director 116

5.9.3 VMforce 119

5.10 Xen的架构 119

5.10.1 Xen简介 120

5.10.2 半虚拟化技术介绍 120

5.10.3 Xen的架构 121

5.11 Xen的实现机制 122

5.11.1 超级调用 122

5.11.2 vCPU调度 123

5.11.3 中断虚拟化 123

5.11.4 内存管理 124

5.11.5 I/O系统 124

5.11.6 信息传递 124

5.11.7 时间管理 125

5.12 Intel VT技术 125

5.12.1 VT-x 126

5.12.2 EPT 129

5.12.3 VT-d 130

5.12.4 VT-c 131

5.13 最新的进展 132

5.13.1 VMware vSphere4.1 132

5.13.2 Xen4.0 133

5.13.3 Intel VT的PLE技术 134

第6章 Amazon EC2 135

6.1 AWS的概况 135

6.1.1 简介 135

6.1.2 产品类别 136

6.1.3 产品特点 137

6.1.4 成功案例 138

6.2 Amazon EC2简介 138

6.3 Amazon EC2的主要模块 139

6.3.1 AMI 139

6.3.2 实例 140

6.3.3 存储 140

6.3.4 安全方面 141

6.3.5 可用区 142

6.3.6 网络方面 142

6.3.7 Web管理界面 142

6.3.8 API 143

6.4 Amazon EC2的使用 143

6.4.1 准备账号 143

6.4.2 创建实例 144

6.4.3 启动服务 148

6.5 Amazon EC2的优缺点 148

6.5.1 优点 148

6.5.2 不足之处 149

第7章 Cisco UCS 151

7.1 什么是 UCS 151

7.2 UCS的架构 151

7.2.1 Cisco UCS 6100系列互联阵列 152

7.2.2 Cisco UCS管理程序 152

7.2.3 Cisco UCS 2100系列扩展模块 153

7.2.4 Cisco UCS 5100系列刀片机箱 153

7.2.5 Cisco B系列刀片服务器 153

7.2.6 Cisco UCS网络适配器 154

7.3 UCS的核心技术之内存扩展 154

7.3.1 Xeon 5500内存架构 154

7.3.2 思科的内存扩展技术 156

7.4 UCS的核心技术之VN-Link 157

7.4.1 虚拟网络的难题 157

7.4.2 Cisco Nexus 1000V的方案 157

7.4.3 NIV的方案 158

7.5 UCS的核心技术之统一网络 159

7.5.1 数据中心的现状 159

7.5.2 统一网络简介 160

7.5.3 统一网络的基石 160

7.5.4 不足之处 162

7.6 为虚拟化而生 162

7.6.1 虚拟化的目标 163

7.6.2 服务器整合 163

7.6.3 简化系统管理 163

7.6.4 加速应有部署 164

第8章 云计算的安全 165

8.1 云计算安全的概念 165

8.1.1 新的挑战 166

8.1.2 现有安全系统的不足 166

8.1.3 云计算的优势 167

8.2 云计算安全的架构 167

8.2.1 云客户端 168

8.2.2 云端 168

8.2.3 第三方机构 170

8.3 Salesforce Force.com的安全机制 170

8.3.1 整体监管和合规性 170

8.3.2 用户管理 171

8.3.3 数据管理 171

8.3.4 系统和网络 171

8.3.5 物理设施 171

8.4 AWS的安全机制 172

8.4.1 整体监管和合规性 172

8.4.2 用户管理 172

8.4.3 数据管理 172

8.4.4 应用保护 173

8.4.5 系统与网络 173

8.4.6 物理设施 174

8.5 为什么云计算更安全 174

8.5.1 安全管理方面 174

8.5.2 高可用性方面 174

8.5.3 数据安全方面 175

8.5.4 人才方面 175

8.5.5 广域网方面 175

8.5.6 总结 175

第三部分 实践篇 178

第9章 深入分析Big Table 178

9.1 BigTable简介 178

9.2 BigTable的架构 178

9.3 BigTable的数据模型和调用接口 179

9.3.1 数据模型 180

9.3.2 调用接口 181

9.4 BigTable的存储模型 181

9.4.1 Tablet的运行机制 182

9.4.2 SSTable的介绍 182

9.4.3 Compaction机制 183

9.5 BigTable的分布式模型 183

9.5.1 综述 184

9.5.2 Chubby 184

9.5.3 如何定位Tablet 185

9.5.4 如何分配Tablet 186

9.6 BigTable的文件系统 187

9.6.1 GFS简介 187

9.6.2 GFS的架构 188

9.6.3 GFS与BigTable的协作 191

9.7 BigTable的优化技术 191

9.7.1 局部性群组 191

9.7.2 压缩 192

9.7.3 通过缓存提高读操作的性能 192

9.7.4 Bloom过滤器 192

9.7.5 提交日志的实现 193

9.7.6 利用不变性 193

9.8 BigTable的功能集 194

9.8.1 论文中提到的特性 194

9.8.2 新特性 195

第10章 YunTable概览 197

10.1 为什么要开发YunTable 197

10.2 YunTable的目标 198

10.2.1 0.2版的主要目标 198

10.2.2 一些限制 199

10.3 YunTable的数据模型 199

10.4 YunTable的命令行 199

10.4.1 Add命令 200

10.4.2 Put命令 200

10.4.3 Get命令 200

10.5 YunTable的架构 200

10.5.1 Master节点 201

10.5.2 Region节点 201

10.5.3 客户端 202

10.6 工作流程 202

10.6.1 流程1:启动Master节点 202

10.6.2 流程2:启动Region节点 203

10.6.3 流程3:启动客户端 203

10.6.4 流程4:添加Master节点 203

10.6.5 流程5:添加Region节点 204

10.6.6 流程6:创建表格 204

10.6.7 流程7:创建列组 204

10.6.8 流程8:添加数据 205

10.6.9 流程9:根据Row Key查询 205

10.7 YunTable的使用 205

10.7.1 准备环境 205

10.7.2 测试用例 206

10.8 YunTable的规划 207

第11章 YunTable的代码剖析 209

11.1 基础知识 209

11.1.1 编程规范 209

11.1.2 代码结构 209

11.1.3 开发环境 210

11.1.4 重要设定 211

11.2 基础部分 211

11.2.1 Utils 212

11.2.2 List 215

11.2.3 Item 216

11.2.4 Conf 219

11.2.5 RPC 220

11.3 Master部分 222

11.3.1 数据结构部分 222

11.3.2 对外接口部分 223

11.3.3 实现部分 223

11.4 Region部分 226

11.4.1 Region 227

11.4.2 WAL 233

11.4.3 Tablet 236

11.4.4 Memstore 242

11.4.5 YFile 244

11.5 客户端部分 251

11.5.1 数据结构部分 251

11.5.2 实现部分 252

第四部分 展望篇 264

第12章 云计算的未来 264

12.1 云计算的服务模式 264

12.1.1 比较 264

12.1.2 未来的竞争 265

12.2 云计算的商业模式 266

12.2.1 “超市”模式 266

12.2.2 “电厂”模式 267

12.2.3 “超市”模式和“电厂”模式的区别 269

12.2.4 超市还是电厂 269

12.3 云计算与中国 270

12.3.1 现状 270

12.3.2 对未来的期望 271

12.4 云计算最新技术 272

12.4.1 Facebook的Open Compute项目 272

12.4.2 VMware的开源PaaS Cloud Foundry 273

12.4.3 YunEngine 273

12.5 聊聊科技产业的未来 274

12.5.1 潜在的优势 275

12.5.2 主要方向 275

12.5.3 驱动力 276

结尾 277

附录 278