本书分为四个部分,每部分内容都由一个研究案例引出。第一部分介绍了如何保证系统的生存,即维护系统正常运行。第二部分介绍了如何衡量系统的容量,以及如何随时间来优化系统的容量。在第三部分讲述了架构师在为数据中心构建软件时应该思考的一般设计问题。第四部分讨论了系统的运行寿命,将其作为整个信息生态环境的一部分。书中代码采用的Java语言,熟悉编程的人都能轻易阅读。作者从Java和Unix的视角看问题,因而本书的焦点比较中立,着眼于跨所有平台的技术和概念。在每种模式和反模式的末尾,都有一段简短精要的总结。
本书适合面向企业级软件的架构师、设计师和开发人员阅读参考。
第1章 引言1
1.1 瞄准正确的目标1
1.2 使用决断力2
1.3 生活的质量3
1.4 挑战的范围3
1.5 随手一松就是一百万3
1.6 务实的架构4
第一部分 稳定性
第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
第二部分 容量
第7章 案例研究:被客户压迫96
7.1 发布倒计时96
7.2 瞄准QA97
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
第三部分 一般设计问题
第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
第四部分 运营
第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
《财务共享的智能化升级:业财税一体化的深度融合》内容简介:财务共享是数字技术和管理变革的共同产物,是解决企业规模不断扩大的
《傅雷家书新编》内容简介:67年前,一位父亲因思念他远隔重洋的孩子写了上百封家书。字字真情,却又害怕孩子觉得厌烦,字里行间带
《Photoshop CS6中文版图像处理实战从入门到精通》内容简介:本书以循序渐进的讲解方式,引领读者快速掌握Photoshop CS6的操作技能
《射频通信电路学习指导(第2版)》是普通高等教育“十五”国家级规划教材《射频通信电路》(第二版)的配套教辅书。《射频通信电路
ThefamousphysiciststimelesslecturesonthepromiseandlimitationsofcomputersWhen,in1...
《南京理工大学史话》内容简介:南京理工大学是隶属于中华人民共和国工业和信息化部的全国重点大学,由创建于1953年的新中国军工科
TheresplentyofdocumentationoninstallingandconfiguringtheApachewebserver,butwhere...
《楚辞》内容简介:本书是我国第一部浪漫主义诗歌总集,由西汉文学家刘向主编,收录了屈原、宋玉的作品以及汉代东方朔、王褒、刘向
《但问旗民:清代的法律与社会(精)》内容简介:《但问旗民:清代的法律与社会》是赖惠敏研究员继《乾隆皇帝的荷包》之后关于清史
《组织管理案例与公案教学(第一季)》内容简介:公案教学团队认为,管理知识和管理工具固然重要,但那应该是管理教育之“术”,而
《秩序之美:网页中的网格设计(修订版)》内容简介:怎样才能设计出简洁大方而不落于俗套的超人气网站?纽约时报网站的资深设计师K
《区块链技术指南》内容简介:VMware中国研发中心云原生应用首席架构师,西蒙弗雷泽大学计算机科学硕士,多年软件全栈开发经验,Ha
YourexpertguidetoimplementingScalableVectorGraphics(SVG)Divein-andquicklylearnho...
Exploratorydataanalysis(EDA)isaboutdetectinganddescribingpatterns,trends,andrela...
《坚守战地1200天》内容简介:本书收录了大量珍贵的采访资料和精彩的战地照片,为了解党报驻外记者的特殊工作,把脉中东时局的历史
改变未来的九大算法 本书特色 google得出的搜索结果是如何产生的? 百度为何会陷入“搜索门”,又是什么机制使然?身处在大数据时代...
TheDeitelsgroundbreakingHowtoProgramseriesoffersunparalleledbreadthanddepthofpro...
Fiddler是一种流行的Web调试代理。它功能强大,界面友好,简单易用,无论对开发人员或者测试人员来说,都是非常有用的工具。《Fi
《正面管教》内容简介:不当的管教方式会影响孩子的一生,而有效的管教方式会有益孩子的一生。本书改变了传统的说教、批评、打骂、
撰稿人毛丹青外号“阿毛”,中国国籍。北京大学毕业后进入中国社会科学院哲学所,1987年留日定居,做过鱼虾生意,当过商人,游历