可扩展的艺术

可扩展的艺术

(美) 阿博特 (Abbott,M.L.) , (美) 费希尔 (Fisher,M.T.) , 著

出版社:人民邮电出版社

年代:2012

定价:79.0

书籍简介:

本书讲述了影响可扩展性的各个方面,包括体系结构、过程、人员和组织,主要内容有为公司扩建规模配备人员、为扩展构建过程、架构设计的扩展解决方案、优化性能、新兴技术的可扩展性、对快速数据增长和新数据中心的规划、监控策略的演化以满足客户需求。

书籍目录:

目 录

导言 1

第一部分 可扩展组织的人员配备

第1章 人员和领导力对可扩展性的影响 6

1.1 AllScale简介 6

1.2 为什么要考虑人员 7

1.3 为什么要考虑组织 8

1.4 为什么要考虑管理和领导力 12

1.5 结论 14

本章要点 14

第2章 可扩展技术组织中的角色 15

2.1 失败的后果 15

2.2 角色的定义 16

2.3 执行主管的职责 17

2.3.1 CEO 18

2.3.2 CFO 19

2.3.3 业务单元责任人和P&L责任人 19

2.3.4 CTO/CIO 19

2.4 组织的职责 20

2.4.1 架构团队的职责 21

2.4.2 软件开发团队的职责 21

2.4.3 生产运营团队的职责 21

2.4.4 基础设施团队的职责 22

2.4.5 质量保证团队的职责 22

2.4.6 产能计划团队的职责 22

2.5 个人贡献者的职责和特征 23

2.5.1 架构师 23

2.5.2 软件工程师 23

2.5.3 操作员 24

2.5.4 基础设施工程师 24

2.5.5 QA工程师/分析师 24

2.5.6 产能计划员 25

2.6 一个组织示例 25

2.7 定义职责的工具 26

2.8 结论 28

本章要点 29

第3章 设计组织 30

3.1 影响可扩展性的组织因素 30

3.2 团队规模 32

3.2.1 警示信号 35

3.2.2 扩大团队或拆分团队 36

3.3 组织架构 38

3.3.1 职能型组织 38

3.3.2 矩阵型组织 40

3.4 结论 42

本章要点 43

第4章 领导力101 44

4.1 什么是领导力 45

4.2 领导力的一个概念模型 46

4.3 评估你是谁 47

4.4 身先士卒 49

4.5 保持谦虚的态度 49

4.6 使命第一,人员至上 50

4.7 做出及时、合理、符合道德的决策 51

4.8 给团队授能和可扩展性 51

4.9 一切围绕股东价值 52

4.10 愿景 53

4.11 使命 55

4.12 战略目标 55

4.13 整合愿景、使命和战略目标 57

4.14 通向成功的因果图 59

4.15 结论 61

本章要点 61

第5章 管理101 63

5.1 管理是什么 63

5.2 项目和任务管理 64

5.3 建设团队——一个运动比喻 65

5.4 提升团队——一个花园比喻 66

5.5 衡量方法、指标和目标评估 69

5.6 目标树 71

5.7 为成功铺路 72

5.8 结论 72

本章要点 73

第6章 进行商业论证 74

6.1 理解经验的鸿沟 74

6.1.1 为什么业务主管可能成为问题所在 75

6.1.2 为什么技术主管可能成为问题所在 75

6.2 破除企业思维定式 76

6.2.1 建立关系 78

6.2.2 树立榜样 78

6.2.3 培训其他主管 78

6.2.4 利用RASCI模型 79

6.2.5 用商业语言交谈 79

6.2.6 让他们参与进来 79

6.2.7 用事实让主管团队感到恐慌 80

6.3 为扩展论证 80

6.4 结论 83

本章要点 83

第二部分 制定扩展流程

第7章 理解流程对扩展的重要性 86

7.1 流程的目的 87

7.2 正确的时间,正确的流程 89

7.2.1 需要有多严苛 90

7.2.2 需要有多复杂 91

7.3 好的流程何时会变成坏的 93

7.4 结论 93

本章要点 94

第8章 管理故障和问题 95

8.1 什么是故障 96

8.2 什么是问题 96

8.3 故障管理的步骤 97

8.4 问题管理的步骤 99

8.5 化解故障管理与问题管理之间的冲突 100

8.6 故障和问题的生命周期 100

8.7 召开每日故障例会 101

8.8 召开季度故障回顾会议 102

8.9 事后分析流程 102

8.10 综合应用 104

8.11 结论 106

本章要点 106

第9章 管理危机和升级 107

9.1 什么是危机 107

9.2 为什么要把危机与其他故障区分开来 108

9.3 危机如何改变一个公司 108

9.4 为混乱赋予秩序 109

9.4.1 “问题经理”的角色 110

9.4.2 团队经理的角色 111

9.4.3 首席工程师的角色 112

9.4.4 个人贡献者的角色 113

9.5 沟通和控制 113

9.6 作战室 114

9.7 升级 115

9.8 状态沟通 115

9.9 危机事后分析会议 116

9.10 危机后续跟进和沟通 117

9.11 结论 117

本章要点 118

第10章 控制生产环境中的变更 119

10.1 什么是变更 120

10.2 变更识别 121

10.3 变更管理 122

10.3.1 变更建议 123

10.3.2 变更批准 125

10.3.3 变更日程安排 125

10.3.4 变更实施和记录 127

10.3.5 变更验证 127

10.3.6 变更审查 127

10.4 变更控制会议 128

10.5 持续的流程改善 128

10.6 结论 129

本章要点 129

第11章 确定应用的余量 131

11.1 流程的目的 131

11.2 流程的步骤 132

11.3 理想的使用比例 135

11.4 结论 137

本章要点 138

第12章 探讨架构设计原则 139

12.1 原则和目标 139

12.2 原则选择 142

12.3 AKF的十二条架构设计原则 143

12.3.1 N+1设计 143

12.3.2 设计为能够回退的 144

12.3.3 设计为能够禁用的 144

12.3.4 设计为能够监控的 144

12.3.5 设计为多个活动站点 144

12.3.6 采用成熟的技术 144

12.3.7 设计为异步的 145

12.3.8 无状态系统 145

12.3.9 进行横向扩展而不是纵向扩展 145

12.3.10 设计为至少可以在两条轴上进行扩展 145

12.3.11 非核心的组件可以购买 145

12.3.12 采用同质化硬件 145

12.4 扩展原则深度解析 146

12.4.1 设计为能够监控的 146

12.4.2 设计为多个活动站点 147

12.4.3 设计为异步的 147

12.4.4 无状态系统 148

12.4.5 进行横向扩展而不是纵向扩展 148

12.4.6 设计为至少可以在两条轴上进行扩展 149

12.5 结论 150

本章要点 150

第13章 联合架构设计 151

13.1 修正组织的功能障碍 151

13.2 设计为能够跨部门扩展 153

13.3 开始条件和结束条件 155

13.4 结论 157

本章要点 157

第14章 架构评审委员会 159

14.1 通过审查确保可扩展性 159

14.2 委员会成员 160

14.3 会议实施 162

14.4 开始条件和结束条件 164

14.5 结论 165

本章要点 166

第15章 关注核心竞争力:构建还是采购 167

15.1 构建还是采购与可扩展性的关系 167

15.2 关注成本 168

15.3 关注竞争优势 168

15.4 “非我所建”现象 169

15.5 结合成本和竞争优势 170

15.5.1 这个组件能够创造竞争优势吗? 170

15.5.2 我们是这个组件或资产最好的责任人吗? 171

15.5.3 这个组件上的竞争如何? 171

15.5.4 我们能经济有效地构建这个组件吗? 171

15.6 AllScale公司的构建还是采购难题 172

15.7 结论 173

本章要点 174

第16章 确定风险 175

16.1 风险管理对扩展的重要性 175

16.2 衡量风险 176

16.3 管理风险 181

16.4 结论 183

本章要点 184

第17章 性能测试和压力测试 185

17.1 执行性能测试 185

17.1.1 判断标准 186

17.1.2 测试环境 186

17.1.3 定义测试 187

17.1.4 执行测试 188

17.1.5 分析数据 188

17.1.6 报告给工程师 189

17.1.7 重复测试和分析 189

17.2 压力测试不要有压力 190

17.2.1 确立目标 190

17.2.2 识别关键服务 191

17.2.3 确定负载 191

17.2.4 测试环境 192

17.2.5 识别监控项 192

17.2.6 制造负载 192

17.2.7 执行测试 193

17.2.8 分析数据 193

17.3 可扩展性的性能测试和压力测试 194

17.4 结论 195

本章要点 196

第18章 屏障条件和回退 197

18.1 屏障条件 197

18.1.1 屏障条件和敏捷开发 198

18.1.2 屏障条件和瀑布开发 200

18.1.3 屏障条件和混合模型 200

18.2 回退能力 201

18.2.1 回退窗口需求 201

18.2.2 回退的技术考量 202

18.2.3 回退的成本考量 203

18.3 功能减负——设计为能够禁用的 203

18.4 结论 204

本章要点 205

第19章 要快还是要正确 206

19.1 业务上的权衡 206

19.2 与可扩展性的关系 209

19.3 如何做决策 210

19.4 结论 213

本章要点 214

第三部分 构建可扩展的方案

第20章 不受技术限制的设计 216

20.1 实现并非架构 216

20.2 不受技术限制的设计 217

20.2.1 TAD和成本 217

20.2.2 TAD和风险 218

20.2.3 TAD和可扩展性 219

20.2.4 TAD和可用性 221

20.3 TAD方法 221

20.4 结论 222

本章要点 222

第21章 创建故障隔离的架构 224

21.1 故障隔离的架构的术语 224

21.2 故障隔离的好处 226

21.2.1 故障隔离和可用性——限制影响 226

21.2.2 故障隔离和可用性——故障检测和解决 228

21.2.3 故障隔离和可扩展性 228

21.2.4 故障隔离和上市时间 229

21.2.5 故障隔离和成本 229

21.3 如何进行故障隔离 230

21.3.1 原则1:什么都不能共享 230

21.3.2 原则2:什么都不能跨过泳道边界 231

21.3.3 原则3:在泳道内交易 231

21.4 何时实现故障隔离 231

21.4.1 方法1:把最赚钱的功能放入泳道 232

21.4.2 方法2:把最容易引发故障的功能放入泳道 232

21.4.3 方法3:根据自然界限划分泳道 232

21.5 如何测试故障隔离的设计 233

21.6 结论 233

本章要点 234

第22章 AKF扩展立方入门 235

22.1 概念,还是规则和工具 235

22.2 AKF扩展立方介绍 236

22.3 扩展立方的含义 237

22.4 扩展立方的X轴 238

22.5 扩展立方的Y轴 239

22.6 扩展立方的Z轴 240

22.7 综合应用 241

22.8 何时何地使用扩展立方 243

22.9 结论 243

本章要点 244

第23章 为扩展划分应用 245

23.1 应用的AKF扩展立方 245

23.2 AKF应用扩展立方的X轴 246

23.3 AKF应用扩展立方的Y轴 248

23.4 AKF应用扩展立方的Z轴 249

23.5 综合应用 251

23.6 应用扩展立方的实际应用 253

23.6.1 电子商务平台 253

23.6.2 人力资源管理系统 254

23.6.3 后台办公IT系统 255

23.6.4 经验之谈 255

23.7 结论 256

本章要点 257

第24章 为扩展划分数据库 258

24.1 数据库的AKF扩展立方 258

24.2 AKF数据库扩展立方的X轴 259

24.3 AKF数据库扩展立方的Y轴 262

24.4 AKF数据库扩展立方的Z轴 264

24.5 综合应用 265

24.6 数据库扩展立方的实际应用 267

24.6.1 电子商务平台 267

24.6.2 人力资源管理系统 269

24.6.3 后台办公IT系统 269

24.6.4 经验之谈 270

24.6.5 时间方面的考量 270

24.7 结论 271

本章要点 271

第25章 为性能和扩展进行缓存 272

25.1 缓存定义 272

25.2 对象缓存 275

25.3 应用缓存 277

25.3.1 代理缓存 278

25.3.2 反向代理缓存 279

25.3.3 缓存软件 280

25.4 内容交付网络 281

25.5 结论 282

本章要点 282

第26章 实现扩展的异步设计 284

26.1 同步的定义 284

26.2 同步调用,还是异步调用 285

26.2.1 同步扩展,还是异步扩展 286

26.2.2 异步系统示例 288

26.3 定义状态 290

26.4 结论 293

本章要点 294

第四部分 解决其他的问题和挑战

第27章 数据太多 296

27.1 数据的成本 296

27.2 数据的价值和成本-价值难题 298

27.3 让数据成为有利可图的 299

27.3.1 期权价值 300

27.3.2 竞争优势 300

27.3.3 成本合理的解决方案(分层的存储方案) 301

27.3.4 转换数据 302

27.4 处理大量的数据 302

27.5 结论 305

本章要点 306

第28章 云和网格 307

28.1 历史和定义 307

28.1.1 网格计算 309

28.1.2 公共云和私有云 310

28.2 云的特征和架构 311

28.2.1 按用量付费 311

28.2.2 按需扩展 311

28.2.3 多租户 312

28.2.4 虚拟化 313

28.3 云和网格的区别 314

28.4 结论 315

本章要点 316

第29章 在云上翱翔 317

29.1 云计算的利弊 317

29.1.1 云计算的优点 318

29.1.2 云计算的缺点 320

29.2 云计算的不同用法 323

29.2.1 环境 323

29.2.2 技能集合 325

29.3 决策流程 325

29.4 结论 327

本章要点 328

第30章 接上网格 329

30.1 网格的利弊 329

30.1.1 网格的优点 330

30.1.2 网格的缺点 331

30.2 网格计算的不同用法 333

30.2.1 生产网格 333

30.2.2 编译网格 334

30.2.3 数据仓库网格 335

30.2.4 后台办公网格 335

30.3 决策流程 336

30.4 结论 338

本章要点 338

第31章 监控应用 340

31.1 “为什么我们没能及早发现它?” 340

31.2 实现监控的框架 342

31.2.1 用户体验和业务指标 345

31.2.2 系统监控 345

31.2.3 应用监控 346

31.3 衡量监控:什么有价值,什么无价值 347

31.4 监控和流程 348

31.5 结论 349

本章要点 349

第32章 规划数据中心 350

32.1 数据中心的成本和约束 350

32.2 位置、位置、还是位置 352

32.3 数据中心与增量增长 354

32.4 三条三之原则 355

32.4.1 第一条三之原则:数据中心的三个成本驱动力 355

32.4.2 第二条三之原则:三对服务器来说是个神奇数字 356

32.4.3 第三条三之原则:三对数据中心来说是个神奇数字 356

32.5 构建多个活动数据中心要考虑的因素 359

32.6 结论 360

本章要点 361

第33章 综合应用 362

33.1 接下来做什么 363

33.2 案例分析 365

33.2.1 eBay:巨大的成功和可扩展性大爆炸 365

33.2.2 Quigo:出现可扩展性问题的年轻产品 366

33.2.3 ShareThis:一个创业公司的故事 367

33.3 参考资料 368

附录

附录A 计算可用性 372

附录B 产能规划计算 378

附录C 负载和性能计算 383

内容摘要:

任何持续发展的公司,最终都需要考虑如何扩展它的系统、组织和流程。这不仅仅是技术问题,还涉及组织、流程、架构等方方面面。扩展组织、流程和系统使之相互支持,达到良性循环,也不仅仅是门科学,还是一门艺术。《可扩展的艺术——现代企业的Web架构、流程及组织》正是对此提供了全面的、实践证明确实有效的解决思路和实用技巧。  对于负责非技术类业务的执行主管或产品经理来说,《可扩展的艺术——现代企业的Web架构、流程及组织》会帮助你明确地提出正确的可扩展性问题,分析并做出正确的决策。而对于技术主管和工程师来说,《可扩展的艺术——现代企业的Web架构、流程及组织》会帮助你解决对扩展造成负面影响的组织和流程方面的问题,并为构建具有更高可扩展性的平台提供了技术模型和建议。

书籍规格:

书籍详细信息
书名可扩展的艺术站内查询相似图书
丛书名图灵程序设计丛书
9787115301727
如需购买下载《可扩展的艺术》pdf扫描版电子书或查询更多相关信息,请直接复制isbn,搜索即可全网搜索该ISBN
出版地北京出版单位人民邮电出版社
版次1版印次1
定价(元)79.0语种简体中文
尺寸24 × 19装帧平装
页数 202 印数 3000

书籍信息归属:

可扩展的艺术是人民邮电出版社于2013.1出版的中图分类号为 TP393.092 的主题关于 网页制作工具-程序设计 的书籍。