《高扩展性网站的50条原则》PDF下载

  • 购买积分:10 如何计算积分?
  • 作  者:(美)MARTIN L.ABBOTT,MICHAEL T.FISHER著;张欣,杨海玲译
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2016
  • ISBN:7115417596
  • 页数:239 页
图书介绍:

第1章 化简方程 1

1.1 原则1:不要过度设计 2

1.2 原则2:设计时就考虑扩展性(D-I-D方法) 6

1.2.1 设计 7

1.2.2 实现 8

1.2.3 部署 8

1.3 原则3:把方案一简再简 10

1.3.1 如何简化范围 10

1.3.2 如何简化设计 11

1.3.3 如何简化实施 12

1.4 原则4:减少DNS查找 13

1.5 原则5:尽可能减少对象 16

1.6 原则6:使用同一品牌的网络设备 19

1.7 小结 21

参考资料 21

第2章 分布工作 23

2.1 原则7:横向复制(X轴原则) 25

2.2 原则8:拆分不同的东西(Y轴原则) 29

2.3 原则9:拆分相近的东西(Z轴原则) 32

2.4 小结 34

参考资料 34

第3章 横向扩展设计 35

3.1 原则10:设计横向扩展方案 36

3.2 原则11:采用经济型系统 39

3.3 原则12:横向扩展数据中心 42

3.4 原则13:利用云技术进行设计 48

3.5 小结 50

参考资料 50

第4章 使用正确的工具 51

4.1 原则14:合理使用数据库 52

4.2 原则15:防火墙,到处都是防火墙 59

4.3 原则16:积极利用日志文件 63

4.4 小结 66

参考资料 66

第5章 不要重复工作 67

5.1 原则17:不要立即检查刚做过的工作 68

5.2 原则18:停止重定向 72

5.3 原则19:放松时序约束 77

5.4 小结 80

参考资料 80

第6章 积极利用缓存 81

6.1 原则20:利用CDN 82

6.2 原则21:使用过期头 85

6.3 原则22:缓存Ajax调用 90

6.4 原则23:利用页面缓存 95

6.5 原则24:利用应用缓存 98

6.6 原则25:利用对象缓存 102

6.7 原则26:把对象缓存放在自己的“层”上 105

6.8 小结 107

参考资料 107

第7章 从错误中吸取教训 109

7.1 原则27:积极地学习 110

7.2 原则28:不要依靠QA发现失误 113

7.3 原则29:没有回退功能的设计是失败的设计 117

7.4 原则30:讨论失败并从中吸取教训 120

7.5 小结 124

参考资料 124

第8章 数据库原则 125

8.1 原则31:注意代价高的关系 126

8.2 原则32:使用类型正确的数据库锁 130

8.3 原则33:不要使用多阶段提交 133

8.4 原则34:不要使用SELECT FOR UPDATE 135

8.5 原则35:不要选择所有数据 137

8.6 小结 140

参考资料 140

第9章 容错设计与故障控制 141

9.1 原则36:采用隔离故障的“泳道” 142

9.2 原则37:绝对不要信任单点故障 148

9.3 原则38:避免系统串联 151

9.4 原则39:确保能够启用/禁用功能 155

9.5 小结 158

第10章 避免或分发状态 159

10.1 原则40:努力实现无状态 161

10.2 原则41:尽可能在浏览器端维护会话 164

10.3 原则42:利用分布式缓存存放状态 167

10.4 小结 170

参考资料 170

第11章 异步通信和消息总线 171

11.1 原则43:尽可能使用异步通信 172

11.2 原则44:确保消息总线能够扩展 175

11.3 原则45:避免让消息总线过度拥挤 179

11.4 小结 182

第12章 其他原则 183

12.1 原则46:慎用第三方解决方案扩展 184

12.2 原则47:清除、归档和成本合理的存储 187

12.3 原则48:删除事务处理中的商业智能 192

12.4 原则49:设计能够监控的应用 195

12.5 原则50:要能胜任 199

12.6 小结 202

参考资料 202

第13章 原则回顾和优先级划分 203

13.1 评估扩展项目和主动权的风险-收益模型 204

13.2 扩展原则的收益/优先级等级 235

13.3 小结 238