《互联网时代的软件革命:SaaS 架构设计》PDF下载

  • 购买积分:12 如何计算积分?
  • 作  者:叶伟等著
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2009
  • ISBN:9787121077364
  • 页数:335 页
图书介绍:本书是国内第一本完整介绍SaaS应用开发的书籍,聚集于架构设计。内容是互联网领域具有丰富实践经验的8位一线架构师,对于多年SaaS实践经验的总结。对于SaaS领域的业务、设计、开发人员,具有很高的指导价值。本书首先从SaaS的商业价值分析开始,讨论SaaS应用与其它应用最大的差异特征:多租户。SaaS应用架构是否成熟正是对多租户的三个重要特性的衡量:高性能、可配置性和伸缩性。本书将对SaaS应用成熟度的4个模型一一描述,并通过郭靖和杨康两个大学生的创业故事来描述SaaS应用逐步成熟到百万级以上租户时,应用软件的架构设计演变过程。同时,本书还针对云计算、OpenAPI、离线应用、安全以及开放平台等SaaS相关的主题进行了深入的阐述。

第1篇 SaaS商业模式第1章 SaaS的前世今生 2

1.1 什么是SaaS 3

1.1.1 SaaS的产生 3

1.1.2 SaaS基本概念 6

1.1.3 SaaS与ASP的异同 8

1.2 SaaS软件的优势 9

1.2.1 给用户的优势 10

1.2.2 给软件商的优势 14

1.3 SaaS的缺点及解决办法 16

1.3.1 依赖互联网 16

1.3.2 数据安全性 17

1.3.3 数据保密性 19

1.4 SaaS成功案例 20

1.4.1 Salesforce.com 20

1.4.2 Google.com 22

1.4.3 Alisoft.com 24

1.4.4 其他SaaS案例 26

1.5 小结 29

第2篇 SaaS应用架构第2章 SaaS成熟度模型 32

2.1 SaaS的规模效应 33

2.2 SaaS成熟度模型分级 36

2.2.1 Level 1:定制开发 36

2.2.2 Level 2:可配置 37

2.2.3 Level 3:高性能的多租户架构 39

2.2.4 Level 4:可伸缩性的多租户架构 41

2.3 如何选择合适的SaaS成熟度模型 43

2.3.1 产品所面向的客户群的特征与需求 43

2.3.2 产品的租户数量级别 44

2.3.3 团队的开发能力与愿意付出的开发/改造成本 45

2.4 SaaS软件的成熟度模型的渐进步骤 46

2.5 小结 47

第3章 构建Multi-Tenant应用 48

3.1 第一阶段:做项目 49

3.1.1 发现商机 49

3.1.2 “4+1”视图 50

3.1.3 设备托管 58

3.2 第二阶段:做产品 59

3.2.1 设备共享 59

3.2.2 创业之旅 61

3.2.3 可配置化 62

3.3 第三阶段:多租户 63

3.3.1 成长的烦恼 63

3.3.2 如何转化成SaaS多租户模式 65

3.3.3 SaaS多租户设计 70

3.3.4 SaaS多租户模式的威力 72

3.4 小结 73

第4章 高性能的Multi-Tenant最佳实践 74

4.1 数据库层性能优化 75

4.1.1 建立合适的索引 76

4.1.2 消除大数据表连接 77

4.1.3 避免复杂SQL 78

4.2 应用层性能优化 78

4.2.1 Cache 79

4.2.2 统计和报表计算 82

4.2.3 基于Tenant的索引搜索 84

4.2.4 异步操作 85

4.3 Web层性能优化 87

4.3.1 Web开发的性能优化策略 88

4.3.2 Http服务器的性能优化策略 91

4.4 性能监控 93

4.5 优化的效果 95

4.6 小结 95

第5章 Multi-Tenant应用的可配置性 98

5.1 数据可配置 100

5.1.1 定制字段 101

5.1.2 预分配字段 102

5.1.3 名称值对 104

5.1.4 方案比较 106

5.2 功能可配置 107

5.2.1 原子功能划分 108

5.2.2 功能包设计 111

5.2.3 功能使用校验 115

5.3 界面可配置 116

5.3.1 系统菜单可配置 116

5.3.2 页面元素可配置 118

5.4 流程可配置 119

5.5 配置元数据管理 119

5.5.1 配置元数据 120

5.5.2 租户配置数据 123

5.5.3 配置元数据服务 125

5.6 可配置系统运行 125

5.6.1 系统菜单框架 126

5.6.2 功能页面容器 127

5.6.3 扩展数据引擎 128

5.6.4 功能引擎 128

5.7 小结 128

第6章 可伸缩的SaaS应用架构 130

6.1 伸缩性(Scalable)的概念 132

6.2 应用服务器层的水平扩展 133

6.2.1 基于Session复制的水平扩展方式 134

6.2.2 基于Session Sticky的水平扩展方式 137

6.2.3 基于Cache的集中式Session实现水平扩展 138

6.2.4 三种水平扩展方式的比较 139

6.3 数据库层的水平扩展 139

6.3.1 数据库的垂直切分 140

6.3.2 数据库的读/写分离技术 141

6.3.3 数据库的水平切分 142

6.3.4 三种数据库层的水平扩展方案对比 145

6.4 小结 146

第7章 SaaS系统安全 148

7.1 应用安全 150

7.1.1 身份认证 150

7.1.2 权限管理 153

7.1.3 日志记录 156

7.1.4 应用监控 157

7.2 数据安全 158

7.2.1 数据隔离 158

7.2.2 数据库连接安全 159

7.2.3 敏感数据加密 160

7.2.4 数据量监控 164

7.3 网络安全 165

7.3.1 安全传输 165

7.3.2 网络攻击防范 167

7.3.3 网络监控 168

7.4 小结 168

第8章 离线应用 170

8.1 系统分析 171

8.1.1 离线应用的4大核心问题 172

8.1.2 离线应用架构 173

8.1.3 相关技术背景 175

8.2 本地使用 176

8.2.1 网络状态检测 176

8.2.2 离线页面支持 178

8.3 本地存储 178

8.3.1 本地数据库支持 178

8.3.2 本地数据存储 179

8.4 数据同步 180

8.4.1 增量数据处理 180

8.4.2 多用户冲突 183

8.5 数据传输 185

8.6 离线应用开发工具介绍 186

8.6.1 本地数据库 187

8.6.2 本地服务 188

8.6.3 工作者线程池 190

8.6.4 Gears待发展的内容 192

8.7 小结 192

第3篇 SaaS基础架构——云计算第9章 分布式文件存储 194

9.1 大文件的分布式存储 195

9.1.1 GFS 195

9.1.2 HDFS 197

9.2 小文件的分布式存储 202

9.2.1 ADFS(Alibaba Distributed File System) 203

9.2.2 小文件存储的另外方案介绍 208

9.3 小结 209

第10章 分布式数据库 210

10.1 基于列的结构化分布式数据库 211

10.1.1 HBase数据库数据结构 211

10.1.2 HBase系统架构 214

10.1.3 HBase实践 215

10.2 基于代理的分布式数据库 217

10.3 基于列的分布式关系数据库 237

10.4 小结 241

第11章 分布式Cache 242

11.1 单层的分布式Cache 243

11.2 多层的分布式Cache 245

11.3 改进的多层分布式Cache 245

11.4 小结 246

第12章 分布式计算 248

12.1 MapReduce分布式计算框架 249

12.2 文件下载的分布式计算 252

12.2.1 中心索引方式 253

12.2.2 分布式的结构化方式 254

12.2.3 改进模型 256

12.3 小结 258

第4篇 开放的SaaS平台第13章 Open API 260

13.1 Open API的商业价值分析 263

13.1.1 Open API的出现、起源与现状 264

13.1.2 Google Maps API带来开放潮流 265

13.1.3 Mashup在Open API的时代 266

13.1.4 Open API的分类 268

13.1.5 Open API的系统架构与运营 276

13.2 Open API相关产品 279

13.3 Open API的实现技术 282

13.3.1 远程接口技术 282

13.3.2 远程接口设计最佳实践 289

13.4 Open API与API托管平台 290

13.5 服务集成平台设计与实现 293

13.6 小结 297

第14章 开放的SaaS平台 298

14.1 PaaS 299

14.1.1 插件模式 301

14.1.2 七巧板模式 303

14.1.3 云计算模式 304

14.1.4 服务托管模式 310

14.2 互联提升价值 311

14.2.1 拓展软件的能力:聚合互联网资源 313

14.2.2 应用互联的价值链 313

14.2.3 基础设施提供 316

14.2.4 互联需开放平台 316

14.3 软件互联平台 317

14.3.1 软件大市场 318

14.3.2 软件生态圈 319

14.4 小结 323

第15章 结束语 324

15.1 SaaS发展趋势 325

15.1.1 SaaS平台化 325

15.1.2 SaaS产业链 326

15.1.3 SaaS移动化 327

15.1.4 服务即软件 328

15.2 软件行业的未来 330

15.2.1 通过互联网使用软件的用户越来越多 330

15.2.2 软件和服务的界限会越来越模糊 330

15.2.3 软件和服务会越来越个性化 331

15.2.4 软件产业大融合 331

参考资料 333