第1章 大道至简 1
规则1——避免过度设计 4
规则2——方案中包括扩展 9
规则3——三次简化方案 13
规则4——减少域名解析 16
规则5——减少页面目标 19
规则6——采用同构网络 23
总结 24
注释 25
第2章 分而治之 27
规则7——X轴扩展 31
规则8——Y轴拆分 35
规则9——Z轴拆分 39
总结 41
注释 42
第3章 水平扩展 43
规则10——向外扩展 46
规则11——用商品化系统(金鱼而非汗血宝马) 50
规则12——托管方案扩展 53
规则13——利用云 61
总结 64
注释 64
第4章 先利其器 65
规则14——适当使用数据库 71
规则15——慎重使用防火墙 80
规则16——积极使用日志文件 85
总结 88
注释 89
第5章 画龙点睛 90
规则17——避免画蛇添足 93
规则18——停止重定向 98
规则19——放宽时间约束 104
总结 107
注释 107
第6章 缓存为王 109
规则20——利用CDN缓存 113
规则21——灵活管理缓存 117
规则22——利用Ajax缓存 120
规则23——利用页面缓存 128
规则24——利用应用缓存 130
规则25——利用对象缓存 134
规则26——独立对象缓存 137
总结 139
注释 139
第7章 前车之鉴 141
规则27——失败乃成功之母 144
规则28——不靠QA发现错误 151
规则29——不能回滚注定失败 155
总结 160
注释 160
第8章 重中之重 162
规则30——从事务处理中清除商务智能 164
规则31——注意昂贵的关系 168
规则32——正确使用数据库锁 172
规则33——禁用分阶段提交 176
规则34——慎用Select for Update 178
规则35——避免选择所有列 181
总结 183
注释 184
第9章 有备无患 185
规则36——用“泳道”隔离故障 188
规则37——拒绝单点故障 194
规则38——避免系统串联 198
规则39——启用与禁用功能 201
总结 205
第10章 超然物外 206
规则40——力求无状态 208
规则41——在浏览器中保存会话数据 211
规则42——用分布式缓存处理状态 213
总结 216
注释 217
第11章 异步通信 218
规则43——尽可能异步通信 220
规则44——扩展消息总线 224
规则45——避免总线过度拥挤 229
总结 233
第12章 意犹未尽 234
规则46——警惕第三方方案 237
规则47——梯级存储策略 240
规则48——分类处理不同负载 246
规则49——完善监控 250
规则50——保持竞争力 255
总结 257
注释 258
第13章 谋定而动 259
用风险收益模型评估可扩展性项目和举措 259
50条可扩展性规则简述 264
可扩展性规则的利益与优先级排行榜 297
总结 300