| 作者 |
| 莫莉·赖特·斯廷森 [美] 马丁L. 阿伯特迈克尔T.费舍尔 |
| 丛书名 |
| 架构师书库 |
| 出版社 |
| 机械工业出版社 |
| ISBN |
| 9782007071458 |
| 简要 |
| 简介 |
| 内容简介书籍计算机书籍 ---------------------------架构启示录--------------------------- 本书研究传统的建筑工作与数字产品的架构工作之间有着怎样的联系,探讨了Christopher Alexander、Richard Saul Wurman、Cedric Price 与Nicholas Negroponte 4 位建筑师的工作。作者总是先讨论他们在各自的工作中所用的技术范式,例如,他们所依循或提出的究竟是控制论领域之中的工作方法,还是人工智能或计算机程序与界面领域之中的工作方法。然后,探寻这几位建筑师怎样影响数字化的世界,例如怎样影响 1980 年代末至今的编程语言、信息架构,以及当前其他一些数字产品的设计工作。为此,我们要思考,这些工作与建筑有什么相通之处?这几位建筑师怎样运用计算机等技术来做试验,从而拓宽其工作领域?计算机、控制论以及人工智能方面的研究者与工程人员,能够通过这些建筑师与他们处理过的建筑问题,获得哪些启发?传统的建筑知识,对新兴的数字产品来说,有着什么样的意义? ---------------------------架构真经:互联网技术架构的设计原则(原书第2版)--------------------------- 本书全面概括了互联网技术架构的理念、设计、实施和监控方面的相关场景、条件和方法,是一本有关设计和构建可扩展性系统的深入且实用的指南。作者马丁?阿伯特和迈克?费舍尔已经为数以百计高速增长公司的上千个不同系统提供了帮助,凭借着多年积累的实战经验,提炼出50条互联网技术架构原则,可以支持几乎任何高速增长公司的扩展。 该版全面更新以反映新的技术趋势和经验,而且更容易阅读、理解和应用。通过Etsy、纳斯达克、Salesforce、Shutterfly、Chegg、Warby Parker、推特等著名互联网企业首席技术官和技术主管现身说法,以易于理解的方式,生动且形象地呈现“规则背后的故事”。 通过阅读本书,在完成并评价技术设计方面,架构师将学到有效的非技术洞见。开发人员会学到从数据库到会话状态的处理技巧。管理人员将在设定目标、做出决策以及与技术团队互动方面得到有益的帮助。无论什么角色,都会得到关于风险与利益平衡的实用指导,通过设置优先级,把计划付诸行动,从而以*低成本获得*大的可扩展性。 |
| 目录 |
---------------------------架构启示录--------------------------- 译者序 致谢 第1章 从传统的建筑到新兴的架构 …… 1 1.1 认识一下本书所要研究的几位建筑师 …… 3 1.2 architecture这个词的种种定义 …… 7 1.3 计算机与建筑学的变化 …… 9 1.4 用计算机提升建筑师的工作能力 …… 10 1.5 Architecture and the Computer Conference …… 13 1.6 对建筑学产生重要影响的各类计算技术 …… 15 第2章 Christopher Alexander:模式、秩序、软件 …… 21 2.1 Alexander小传 …… 22 2.2 为建筑学而设的操作系统 …… 24 2.3 顺着天意而行 …… 26 2.4 形象地展现复杂关系 …… 31 2.5 模式网络与模式语言 …… 47 2.6 生成能力 …… 55 2.7 Alexander对数字产品设计的影响 …… 58 2.8 软件中的模式 …… 59 2.9 把建筑学的设计理念引入软件领域 …… 67 2.10 不受其他建筑师待见的Alexander …… 72 2.11 结论 …… 76 第3章 Richard Saul Wurman:信息、制图、理解 …… 78 3.1 美国建筑师学会在费城举办的会议 …… 78 3.2 通过架构促进理解 …… 83 3.3 让事物彼此联系起来 …… 87 3.4 叙述方式 …… 95 3.5 沟通、融合、交流 …… 97 3.6 结论 …… 106 第4章 信息架构师 …… 108 4.1 Xerox、IBM与“信息架构” …… 109 4.2 “The Computer Reaches Out” …… 111 4.3 信息架构师与Web …… 115 4.4 结论 …… 126 第5章 Cedric Price:响应式的建筑与智能建筑物 …… 128 5.1 Price小传 …… 130 5.2 反建筑师与反建筑物 …… 132 5.3 供教学与交流用的建筑机器 …… 136 5.4 Generator …… 148 5.5 结论 …… 164 第6章 Nicholas Negroponte及MIT Architecture Machine Group——与人工智能对接 …… 165 6.1 “献给第一台能够理解手势的机器” …… 166 6.2 architecture machine理论 …… 170 6.3 “封闭的世界”与建筑研究的资金 …… 175 6.4 microworld与blocks world …… 177 6.5 为了获得资助而调整研究方向 …… 191 6.6 图形对话理论与国家科学基金 …… 193 6.7 “supreme usability” …… 198 6.8 Mapping by Yourself …… 210 6.9 媒体 …… 216 6.10 结论 …… 221 第7章 建造智能的世界 …… 224 注解 …… 229 精选书目 …… 283 ---------------------------架构真经:互联网技术架构的设计原则(原书第2版)--------------------------- 本书赞誉 中文版序一 中文版序二 译者序 前言 致谢 作者简介 第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 |