《发布!软件的设计与部署》PDF下载

  • 购买积分:10 如何计算积分?
  • 作  者:(美)尼加德著
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2015
  • ISBN:9787115380456
  • 页数:227 页
图书介绍:本书分为四个部分,每部分内容都由一个研究案例引出。第一部分介绍了如何保证系统的生存,即维护系统正常运行。第二部分介绍了如何衡量系统的容量,以及如何随时间来优化系统的容量。在第三部分讲述了架构师在为数据中心构建软件时应该思考的一般设计问题。第四部分讨论了系统的运行寿命,将其作为整个信息生态环境的一部分。本书适合面向企业级软件的架构师、设计师和开发人员阅读参考。

第1章 引言 1

1.1 瞄准正确的目标 1

1.2 使用决断力 2

1.3 生活的质量 3

1.4 挑战的范围 3

1.5 随手一松就是一百万 3

1.6 务实的架构 4

第一部分 稳定性 8

第2章 案例研究:航空系统宕机的异常 8

2.1 事故 9

2.2 结果 12

2.3 事后调查 12

2.4 确凿的证据 15

2.5 一点预防 17

第3章 稳定性概述 19

3.1 定义稳定性 20

3.2 故障模式 22

3.3 裂痕扩散 22

3.4 改障链 23

3.5 模式与反模式 24

第4章 稳定性反模式 26

4.1 集成点 27

4.2 连锁反应 37

4.3 连锁故障 40

4.4 用户 42

4.5 阻塞的线程 50

4.6 自我否定攻击 55

4.7 尺度效应 57

4.8 不平衡的容量 60

4.9 慢响应 63

4.10 SLA倒置 64

4.11 无边界结果集 67

第5章 稳定性模式 70

5.1 使用超时 70

5.2 断路器 73

5.3 隔板 75

5.4 稳定状态 78

5.5 快速失效 83

5.6 握手 85

5.7 测试装置 87

5.8 去耦合中间件 90

第6章 稳定性总结 93

第二部分 容量 96

第7章 案例研究:被客户压迫 96

7.1 发布倒计时 96

7.2 瞄准QA 97

7.3 负载测试 99

7.4 被大量会话所杀 101

7.5 测试的鸿沟 102

7.6 后果 103

第8章 容量概述 105

8.1 定义容量 105

8.2 约束 106

8.3 关联 107

8.4 可扩展性 107

8.5 容量的神话 108

8.6 总结 114

第9章 容量反模式 115

9.1 资源池竞争 115

9.2 泛滥的JSP碎片 118

9.3 AJAX过度之伤 119

9.4 驻留过久的会话 121

9.5 HTML中浪费的空间 122

9.6 刷新按钮 125

9.7 手工的SQL语句 126

9.8 数据库富营养化 128

9.9 集成点延迟 130

9.10 Cookie怪兽 131

9.11 总结 133

第10章 容量模式 134

10.1 连接池 134

10.2 谨慎使用缓存 136

10.3 预计算容量 137

10.4 调整垃圾回收器 140

10.5 总结 142

第三部分 一般设计问题 144

第11章 网络连接 144

11.1 多宿主服务器 144

11.2 路由 146

11.3 虚拟IP地址 146

第12章 安全 149

12.1 最少特权原则 149

12.2 配置的密码 150

第13章 可用性 151

13.1 收集可用性需求 151

13.2 记录可用性需求 152

13.3 负载均衡 153

13.4 集群 157

第14章 管理 159

14.1 “测试和产品匹配吗?” 159

14.2 配置文件 161

14.3 启动和关闭 163

14.4 管理接口 164

第15章 设计总结 165

第四部分 运营 168

第16章 案例研究:惊人的宇宙 168

16.1 旺季 168

16.2 婴儿的第一个圣诞 169

16.3 切脉 169

16.4 感恩节 170

16.5 黑色星期五 170

16.6 重要的信号 172

16.7 诊断测试 172

16.8 专家打来电话 173

16.9 比较解救方案 174

16.10 条件是否会响应处理 175

16.11 收尾 176

第17章 透明度 177

17.1 视角 178

17.2 透明度设计 184

17.3 使用各种技术 184

17.4 日志 185

17.5 监控系统 190

17.6 法律上及事实上的标准 194

17.7 操作数据库 201

17.8 支持流程 205

17.9 总结 208

第18章 适应 209

18.1 与时俱进 209

18.2 适应性的软件设计 210

18.3 适应性的企业架构 215

18.4 发布应无害 220

18.5 总结 224

参考书目 226