| 书[0名0]: | 分布式系统:概念与设计(原书[0第0]5版)|3022538 |
| 图书定价: | 128元 |
| 图书作者: | (英)George Coulouris;Jean Dollimore;Tim Kindberg;Gordon Blair |
| 出版社: | 机械工业出版社 |
| 出版日期: | 2013/3/1 0:00:00 |
| ISBN号: | 9787111403920 |
| 开本: | 16开 |
| 页数: | 638 |
| 版次: | 1-1 |
| 作者简介 |
| George Coulouris 伦敦[0大0][0学0]皇后玛利[0学0]院荣誉教授,剑桥[0大0][0学0]计算机实验室访问教授。 Jean Dollimore 伦敦[0大0][0学0]皇后玛利[0学0]院的高级讲师。 Tim Kindberg matter 2 media创新技术公司创始人,Pervasive Media Studio研究主任,英[0国0]布里斯托尔和美[0国0]帕洛阿尔托惠普实验室高级研究员,英[0国0]巴斯[0大0][0学0]计算机科[0学0]系访问教授。 Gordon Blair 兰卡斯特[0大0][0学0]计算系分布式系统教授,挪威特罗姆瑟[0大0][0学0]兼职教授。 |
| 内容简介 |
| 本书旨在全面介绍互联网及其他常用分布式系统的原理、体系结构、算[0法0]和设计,内容涵盖分布式系统的相关概念、安全、数据复制、组通信、分布式文件系统、分布式事务、分布式系统设计等,以及相关的前沿主题,包括Web服务、网格、移动系统和无处不在系统等。 |
| 目录 |
Distributed Systems:Concepts and Design,Fifth Edition 出版者的话 译者序 前言 [0第0]1章 分布式系统的特征1 1.1 简介1 1.2 分布式系统的例子2 1.2.1 Web搜索2 1.2.2 [0大0]型多人在线游戏3 1.2.3 金融交易3 1.3 分布式系统的趋势4 1.3.1 泛在联网和现代互联网5 1.3.2 移动和无处不在计算5 1.3.3 分布式多媒体系统7 1.3.4 把分布式计算作为一个公共设施7 1.4 关注资源共享8 1.5 挑战9 1.5.1 异构性9 1.5.2 开放性10 1.5.3 安全性11 1.5.4 可伸缩性11 1.5.5 故障处理12 1.5.6 并发性13 1.5.7 透明性14 1.5.8 服务质量15 1.6 实例研究:万维网15 1.7 小结20 练习20 [0第0]2章 系统模型22 2.1 简介22 2.2 物理模型23 2.3 体系结构模型24 2.3.1 体系结构元素24 2.3.2 体系结构模式30 2.3.3 相关的中间件解决方案34 2.4 基础模型36 2.4.1 交互模型36 2.4.2 故障模型39 2.4.3 安全模型41 2.5 小结44 练习45 [0第0]3章 网络和网际互连46 3.1 简介46 3.2 网络类型48 3.3 网络原理50 3.3.1 数据包的传输50 3.3.2 数据流50 3.3.3 交换模式51 3.3.4 协议52 3.3.5 路由55 3.3.6 拥塞控制57 3.3.7 网际互连58 3.4 互联网协议60 3.4.1 IP寻址62 3.4.2 IP协议63 3.4.3 IP路由64 3.4.4 IPv667 3.4.5 移动IP69 3.4.6 TCP和UDP70 3.4.7 域[0名0]71 3.4.8 防火墙72 3.5 实例研究:以太网、WiFi、蓝牙74 3.5.1 以太网75 3.5.2 IEEE 802.11无线LAN78 3.5.3 IEEE 802.15.1蓝牙无线PAN79 3.6 小结81 练习81 [0第0]4章 进程间通信83 4.1 简介83 4.2 互联网协议的API84 4.2.1 进程间通信的特征84 4.2.2 套接字85 4.2.3 UDP数据报通信85 4.2.4 TCP流通信88 4.3 外部数据表示和编码91 4.3.1 CORBA的公共数据表示92 4.3.2 Java对象序列化93 4.3.3 可扩展标记语言94 4.3.4 远程对象引用97 4.4 组播通信98 4.4.1 IP组播——组播通信的实现98 4.4.2 组播的可靠性和排序100 4.5 网络虚拟化:覆盖网络101 4.5.1 覆盖网络101 4.5.2 Skype:一个覆盖网络的例子102 4.6 实例研究:MPI103 4.7 小结104 练习105 [0第0]5章 远程调用107 5.1 简介107 5.2 请求-应答协议107 5.3 远程过程调用112 5.3.1 RPC的设计问题113 5.3.2 RPC的实现115 5.3.3 实例研究:Sun RPC116 5.4 远程方[0法0]调用118 5.4.1 RMI的设计问题118 5.4.2 RMI的实现121 5.4.3 分布式无用单元收集124 5.5 实例研究:Java RMI125 5.5.1 创建客户和服务器程序127 5.5.2 Java RMI的设计和实现130 5.6 小结130 练习131 [0第0]6章 间接通信133 6.1 简介133 6.2 组通信134 6.2.1 编程模型135 6.2.2 实现问题136 6.2.3 实例研究:JGroups工具箱138 6.3 发布-订阅系统140 6.3.1 编程模型142 6.3.2 实现问题143 6.3.3 发布-订阅系统的例子146 6.4 消息队列146 6.4.1 编程模型147 6.4.2 实现问题148 6.4.3 实例研究:Java消息服务149 6.5 共享内存的方式152 6.5.1 分布式共享内存152 6.5.2 元组空间通信153 6.6 小结159 练习161 [0第0]7章 操作系统支持162 7.1 简介162 7.2 操作系统层163 7.3 保护164 7.4 进程和线程165 7.4.1 地址空间166 7.4.2 新进程的生成167 7.4.3 线程169 7.5 通信和调用176 7.5.1 调用性能177 7.5.2 异步操作181 7.6 操作系统的体系结构183 7.7 操作系统层的虚拟化185 7.7.1 系统虚拟化186 7.7.2 实例研究:系统虚拟化的Xen方[0法0]186 7.8 小结193 练习194 [0第0]8章 分布式对象和组件196 8.1 简介196 8.2 分布式对象197 8.3 实例研究:CORBA198 8.3.1 CORBA RMI199 8.3.2 CORBA的体系结构203 8.3.3 CORBA远程对象引用205 8.3.4 CORBA服务206 8.3.5 CORBA客户和服务器实例206 8.4 从对象到组件209 8.5 实例研究:企业JavaBeans和Fractal212 8.5.1 企业JavaBeans213 8.5.2 Fractal217 8.6 小结220 练习220 [0第0]9章 Web服务222 9.1 简介222 9.2 Web服务223 9.2.1 SOAP225 9.2.2 Web服务与分布式对象模型的比较228 9.2.3 在Java中使用SOAP229 9.2.4 Web服务和CORBA的比较232 9.3 Web服务的服务描述和接口定义语言233 9.4 Web服务使用的目录服务235 9.5 XML安全性237 9.6 Web服务的协作239 9.7 Web服务的应用241 9.7.1 面向服务的体系结构241 9.7.2 网格241 9.7.3 云计算243 9.8 小结244 练习245 [0第0]10章 对等系统247 10.1 简介247 10.2 Napster及其遗留系统250 10.3 对等中间件251 10.4 路由覆盖252 10.5 路由覆盖实例研究:Pastry和Tapestry254 10.5.1 Pastry254 10.5.2 Tapestry260 10.5.3 从结构化对等方[0法0]到非结构化对等方[0法0]260 10.6 应用实例研究:Squirrel、OceanStore和Ivy262 10.6.1 Squirrel Web缓存263 10.6.2 OceanStore文件存储264 10.6.3 Ivy文件系统267 10.7 小结269 练习269 [0第0]11章 安全性271 11.1 简介271 11.1.1 威胁和攻击272 11.1.2 保护电子事务274 11.1.3 设计安全系统275 11.2 安全技术概述276 11.2.1 密码[0学0]277 11.2.2 密码[0学0]的应用277 11.2.3 证书279 11.2.4 访问控制280 11.2.5 凭证282 11.2.6 防火墙283 11.3 密码算[0法0]283 11.3.1 密钥(对称)算[0法0]285 11.3.2 公钥(不对称)算[0法0]288 11.3.3 混合密码协议289 11.4 数字签[0名0]289 11.4.1 公钥数字签[0名0]290 11.4.2 密钥数字签[0名0]——MAC291 11.4.3 安全摘要函数291 11.4.4 证书标准和证书机构292 11.5 密码实用[0学0]293 11.5.1 密码算[0法0]的性能293 11.5.2 密码[0学0]的应用和政治障碍294 11.6 实例研究:Needham-Schroeder、Kerberos、TLS和802.11 WiFi295 11.6.1 Needham-Schroeder认证协议295 11.6.2 Kerberos296 11.6.3 使用安全套接字确保电子交易安全300 11.6.4 IEEE 802.11 WiFi安全设计中初的缺陷302 11.7 小结303 练习304 [0第0]12章 分布式文件系统305 12.1 简介305 12.1.1 文件系统的特点307 12.1.2 分布式文件系统的需求308 12.1.3 实例研究309 12.2 文件服务体系结构310 12.3 实例研究:SUN网络文件系统313 12.4 实例研究:Andrew文件系统321 12.4.1 实现322 12.4.2 缓存的一致性324 12.4.3 其他方面326 12.5 新进展327 12.6 小结330 练习331 [0第0]13章 [0名0]字服务332 13.1 简介332 13.2 [0名0]字服务和域[0名0]系统334 13.2.1 [0名0]字空间335 13.2.2 [0名0]字解析337 13.2.3 域[0名0]系统339 13.3 目录服务344 13.4 实例研究:全局[0名0]字服务344 13.5 实例研究:X.500目录服务346 13.6 小结349 练习349 [0第0]14章 时间和全局状态351 14.1 简介351 14.2 时钟、事件和进程状态352 14.3 同步物理时钟353 14.3.1 同步系统中的同步354 14.3.2 同步时钟的Cristian方[0法0]354 14.3.3 Berkeley算[0法0]355 14.3.4 网络时间协议355 14.4 逻辑时间和逻辑时钟357 14.5 全局状态359 14.5.1 全局状态和一致割集360 14.5.2 全局状态谓词、稳定性、安全性和活性362 14.5.3 Chandy和Lamport的“快照”算[0法0]362 14.6 分布式调试365 14.6.1 收集状态366 14.6.2 观察一致的全局状态366 14.6.3 判定可能的?367 14.6.4 判定明确的?368 14.6.5 在同步系统中判定可能的?和明确的?369 14.7 小结369 练习369 [0第0]15章 协调和协定371 15.1 简介371 15.2 分布式互斥373 15.3 选举377 15.4 组通信中的协调与协定380 15.4.1 基本组播381 15.4.2 可靠组播381 15.4.3 有序组播383 15.5 共识和相关问题388 15.5.1 系统模型和问题定义389 15.5.2 同步系统中的共识问题391 15.5.3 同步系统中的拜占庭将军问题392 15.5.4 异步系统的不可能性394 15.6 小结395 练习396 [0第0]16章 事务和并发控制398 16.1 简介398 16.1.1 简单的同步机制(无事务)399 16.1.2 事务的故障模型400 16.2 事务400 16.2.1 并发控制402 16.2.2 事务放弃时的恢复405 16.3 嵌套事务406 16.4 锁408 16.4.1 死锁413 16.4.2 在加锁机制中增加并发度415 16.5 乐观并发控制417 16.6 时间戳排序419 16.7 并发控制方[0法0]的比较423 16.8 小结425 练习425 [0第0]17章 分布式事务429 17.1 简介429 17.2 平面分布式事务和嵌套分布式事务429 17.3 原子提交协议431 17.3.1 两阶段提交协议432 17.3.2 嵌套事务的两阶段提交协议434 17.4 分布式事务的并发控制437 17.4.1 加锁437 17.4.2 时间戳并发控制437 17.4.3 乐观并发控制438 17.5 分布式死锁439 17.6 事务恢复444 17.6.1 日志445 17.6.2 影子版本446 17.6.3 为何恢复文件需要事务状态和意图列表447 17.6.4 两阶段提交协议的恢复448 17.7 小结450 练习450 [0第0]18章 复制453 18.1 简介453 18.2 系统模型和组通信的作用454 18.2.1 系统模型455 18.2.2 组通信的作用456 18.3 容错服务459 18.3.1 被动(主备份)复制461 18.3.2 主动复制462 18.4 高可用服务的实例研究:闲聊体系结构、Bayou和Coda463 18.4.1 闲聊体系结构464 18.4.2 Bayou系统和操作变换方[0法0]469 18.4.3 Coda文件系统471 18.5 复制数据上的事务475 18.5.1 复制事务的体系结构476 18.5.2 可用拷贝复制477 18.5.3 网络分区479 18.5.4 带验证的可用拷贝479 18.5.5 [0法0]定数共识方[0法0]480 18.5.6 虚拟分区算[0法0]481 18.6 小结483 练习484 [0第0]19章 移动和无处不在计算486 19.1 简介486 19.2 关联491 19.2.1 发现服务492 19.2.2 物理关联495 19.2.3 小结和前景496 19.3 互操作497 19.3.1 易变系统的面向数据编程497 19.3.2 间接关联和软状态500 19.3.3 小结和前景501 19.4 感[0知0]和上下文敏感501 19.4.1 传感器502 19.4.2 感[0知0]体系结构502 19.4.3 位置感[0知0]506 19.4.4 小结和前景509 19.5 安全性和私密性510 19.5.1 背景510 19.5.2 一些解决办[0法0]511 19.5.3 小结和前景515 19.6 自适应515 19.6.1 内容的上下文敏感自适应515 19.6.2 适应变化的系统资源517 19.6.3 小结和前景518 19.7 实例研究:Cooltown518 19.7.1 Web存在519 19.7.2 物理[0超0]链接520 19.7.3 互操作和eSquirt协议521 19.7.4 小结和前景522 19.8 小结523 练习523 [0第0]20章 分布式多媒体系统525 20.1 简介525 20.2 多媒体数据的特征527 20.3 服务质量管理528 20.3.1 服务质量协[0商0]531 20.3.2 许可控制534 20.4 资源管理534 20.5 流自适应535 20.5.1 调整536 20.5.2 过滤536 20.6 实例研究:Tiger视频文件服务器、BitTorrent和端系统多播537 20.6.1 Tiger视频文件服务器537 20.6.2 BitTorrent540 20.6.3 端系统多播541 20.7 小结544 练习544 [0第0]21章 分布式系统设计:Google实例研究546 21.1 简介546 21.2 实例研究简介:Google547 21.3 总体结构和设计理念550 21.3.1 物理模型550 21.3.2 总的系统体系结构551 21.4 底层通信范型553 21.4.1 远程调用554 21.4.2 发布-订阅556 21.4.3 通信的关键设计选择总结557 21.5 数据存储和协调服务557 21.5.1 Google文件系统557 21.5.2 Chubby561 21.5.3 Bigtable565 21.5.4 关键设计选择总结570 21.6 分布式计算服务571 21.6.1 MapReduce571 21.6.2 Sawz[0all0]574 21.6.3 关键设计选择总结575 21.7 小结576 练习576 参考文献578 索引615 |
这本书的包装真是到位,打开快递的时候就被它厚重的质感和精美的封面吸引了。封面设计简洁大气,字体清晰,一看就知道是那种沉甸甸、有分量的技术书籍。书脊的印刷也相当不错,文字饱满,没有任何毛边,翻开书页,纸张的触感也很好,不是那种容易泛黄的廉价纸,而是带有一点点哑光效果,非常适合长时间阅读,不容易反光,对眼睛也比较友好。装订方面,看得出来是精装,而且缝线牢固,即使经常翻阅,也不太可能出现散页的情况,这一点对于经常需要查阅资料的技术人员来说,是非常重要的考量。总的来说,从拿到书的第一刻起,就对这本书的品质有了非常高的期待,这种精良的制作工艺,本身就是一种对知识的尊重,让人在阅读之前就已经充满了学习的动力和敬意。物流速度也超出了我的预期,比预计时间提前了好几天就送到了,包装也很严实,没有一点磕碰,这一点对于追求效率的读者来说,绝对是加分项。
评分我拿到这本书的时候,就立刻被它那严谨的排版和丰富的插图所吸引。每一页的内容都安排得井井有条,无论是公式的推导、概念的解释,还是架构的图示,都清晰明了,极大地降低了理解的门槛。尤其是一些复杂的分布式系统概念,通过书中绘制的大量图表,变得生动形象,不再是冰冷抽象的文字。我特别喜欢其中关于一致性模型的部分,作者通过一系列的例子和图示,将 Paxos、Raft 等算法的演进过程展示得淋漓尽致,即便是之前对这方面有些模糊的读者,也能迅速 grasp 到核心思想。此外,书中还穿插了一些实际案例分析,比如如何设计一个高可用、可扩展的分布式数据库,或者如何构建一个能够支撑海量用户请求的微服务架构,这些内容都非常有参考价值,能够帮助读者将理论知识与实际工程应用相结合,提升解决实际问题的能力。这种理论与实践相结合的编排方式,让这本书的实用性大大增强。
评分阅读这本书的过程,让我对计算机科学的宏观架构和底层原理有了更深层次的理解。作者在描述分布式系统时,不仅仅停留在概念层面,更是深入剖析了各个组件之间是如何协同工作的,以及在面临各种挑战(如网络延迟、节点故障、数据一致性等)时,不同的设计方案是如何权衡利弊、做出取舍的。书中对于 CAP 定理、BASE 理论等经典理论的阐述,逻辑清晰,条理分明,能够帮助读者建立起一套完整的分布式系统设计思维框架。我尤其对书中关于分布式事务处理和数据同步的部分印象深刻,作者详细介绍了各种解决方案的优缺点,以及在不同场景下应该如何选择合适的技术。这种深入浅出的讲解方式,对于正在构建或维护分布式系统的工程师来说,无疑是一份宝贵的财富,能够帮助我们避免走弯路,少踩一些坑。
评分这本书的内容深度和广度都达到了令人惊叹的水平,作者对于分布式系统各个方面的知识都进行了非常详尽的阐述,从基础的网络通信协议,到高层次的分布式共识算法,再到实际的存储和计算架构,无所不包。阅读这本书的过程,就像是在进行一次深度的大脑洗礼,不断地刷新和拓展我对分布式系统的认知边界。我特别喜欢书中关于故障容错和可伸缩性设计的章节,作者不仅列举了各种可能的故障场景,还详细介绍了各种应对策略,包括冗余、备份、负载均衡、容错机制等等,这些内容对于构建健壮、可靠的分布式系统至关重要。这本书不仅适合初学者入门,也能够为资深工程师提供新的视角和深入的思考,可以说是分布式系统领域的“必读之作”。
评分这本书的语言风格非常吸引我,既有学术的严谨性,又不失工程师的实践导向。作者在解释复杂概念时,善于使用生动形象的比喻和恰当的类比,将抽象的原理具象化,让读者更容易理解。同时,书中充斥着大量的业界最佳实践和设计模式,这些宝贵的经验凝聚了作者多年在分布式系统领域的探索与实践。我尤其欣赏书中对于不同技术选型和权衡的讨论,比如在选择消息队列时,是偏向于保证顺序性还是吞吐量,在设计分布式缓存时,如何处理缓存失效和一致性问题。这些都是在实际工作中经常会遇到的问题,书中提供的分析角度和解决方案,能够极大地启发我们的思考,提升我们设计和实现分布式系统的能力。
本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度,google,bing,sogou 等
© 2025 book.tinynews.org All Rights Reserved. 静思书屋 版权所有