万本电子书0元读

万本电子书0元读

顶部广告

分布式系统(原书第4版)电子书

从云计算、大数据平台到区块网络,分布式系统已成为现代计算基础设施的基石。然而,分布式系统的设计与发涉及通信、同步、一致性、容错等复杂问题,技术门槛高、知识体系庞杂。全面掌握分布式系统的核心原理与设计范式,并将其应用于真实系统,已成为计算机科学与工程领域的学生及从业者需要具备的核心能力。<br />本书由分布式系统领域的两位顶尖专家联袂撰写,系统阐述了分布式系统的原理、概念与核心技术。全书涵盖通信、程、命名、同步、一致性与复制、容错、安全等七大核心主题,并介绍了基于对象的分布式系统、分布式文件系统、基于文档的分布式系统及基于协作的分布式系统等实际系统。<br />本书特色:<br />原理与实例并重:在讨论通用原理时,始终紧密结合现有分布式系统的实例,帮助读者理解理论如何落地于真实系统。<br />紧跟技术前沿:反映分布式系统领域的发展现状,所有Python代码更新至Python 3,channel软件包全面修订简化。<br />灵活的学习设计:设有多处“框注”模块,便于读者在初次阅读时有选择性地跳过部分内容。<br />丰富的配套资源:配套网站(www.distributed-systems.net)提供代码示例、图表和PPT等。

售       价:¥

纸质售价:¥101.00购买纸书

0人正在读 | 0人评论 6.5

作       者:(荷)马滕·范·斯廷,(荷)安德鲁·S· 塔嫩鲍姆

出  版  社:机械工业出版社

出版时间:2026-09-02

字       数:44.7万

所属分类: 科技 > 计算机/网络 > 计算机理论与教程

温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印

为你推荐

  • 读书简介
  • 目录
  • 累计评论(条)
  • 读书简介
  • 目录
  • 累计评论(条)
本书新版行了全面修订和扩展,将原理和范型重新拆分并整合为9个章节,包括概述、架构、程、通信、命名、协调、复制和容错。全书对基础知识和特定主题行了分离,后者被组织成不同的章节模块,在第一次阅读时可以跳过。为了帮助读者更好地理解算法部分,本书提供Python示例程序。<br/>【推荐语】<br/>从云计算、大数据平台到区块网络,分布式系统已成为现代计算基础设施的基石。然而,分布式系统的设计与发涉及通信、同步、一致性、容错等复杂问题,技术门槛高、知识体系庞杂。全面掌握分布式系统的核心原理与设计范式,并将其应用于真实系统,已成为计算机科学与工程领域的学生及从业者需要具备的核心能力。<br/>本书由分布式系统领域的两位顶尖专家联袂撰写,系统阐述了分布式系统的原理、概念与核心技术。全书涵盖通信、程、命名、同步、一致性与复制、容错、安全等七大核心主题,并介绍了基于对象的分布式系统、分布式文件系统、基于文档的分布式系统及基于协作的分布式系统等实际系统。<br/>本书特色:<br/>原理与实例并重:在讨论通用原理时,始终紧密结合现有分布式系统的实例,帮助读者理解理论如何落地于真实系统。<br/>紧跟技术前沿:反映分布式系统领域的发展现状,所有Python代码更新至Python 3,channel软件包全面修订简化。<br/>灵活的学习设计:设有多处“框注”模块,便于读者在初次阅读时有选择性地跳过部分内容。<br/>丰富的配套资源:配套网站(www.distributed-systems.net)提供代码示例、图表和PPT等。<br/>【作者】<br/>马滕·范·斯廷(Maarten van Steen) 荷兰信息与通信技术学术研究国家平台主席,荷兰国家科学基金会科学委员会成员。研究方向为分布式系统与无线系统,并长期从事分布式系统的教学工作。1983年于特温特大学获应用数学专业理学硕士学位,研究领域为组合优化,尤精于图论。1988年于莱顿大学获计算机科学博士学位,研究方向为操作系统建模,成功构建出近真实系统的模型。毕业后荷兰应用科学研究组织从事并行计算方面的研究。1993年就职于鹿特丹伊拉斯说大学,1994年以助理教授身份加盟阿妈斯特丹自由大学,2002年受聘为正教授。2015年调任特温特大学,曾任数字社会研究所科学主任。 安德鲁·S.塔嫩鲍姆(Andrew S. Tanenbaum ) 阿姆斯特丹自由大学荣休教授,荷兰皇家艺术与科学院院士,ACMFellow,IEEEFellow。他撰写的计算机教材享誉全球,被翻译为20种语言在各国大学中使用。他发的MINIX操作系统是一个源项目,专注于高可靠性、灵活性及安全性。他曾获得享有盛名的欧洲研究理事会卓越贡献奖,以及ACM和IEEE的诸多奖项。     陈向群,北京大学信息科学技术学院、高可信软件技术教育部重实验室教授、博士生导师,主要研究方向为系统软件、移动计算、智能软件和软件工程。现任北京计算机学会理事长,中国计算机学会教育专委会常务理事。长期担任北京大学“操作系统”“计算机系统导论”课程主讲教师,在华文慕课上设的“操作系统原理”获评2017年度国家精品在线放课程。曾获中国教师发展基金会高校计算机专业优秀教师奖励、北京市高等教育教学成果奖一等奖、北京大学教学成果奖等奖项。<br/>
目录展开

前言

第1章 简介

1.1 从网络系统到分布式系统

1.1.1 分布式与去中心化系统

1.1.2 区分二者为何重要

1.1.3 学习分布式系统

1.2 设计目标

1.2.1 资源共享

1.2.2 分布透明性

1.2.3 开放性

1.2.4 可靠性

1.2.5 安全性

1.2.6 可扩展性

1.3 分布式系统的简单分类

1.3.1 高性能分布式计算

1.3.2 分布式信息系统

1.3.3 普适系统

1.4 陷阱

1.5 小结

第2章 架构

2.1 架构风格

2.1.1 分层架构

2.1.2 面向服务的架构

2.1.3 发布-订阅架构

2.2 中间件和分布式系统

2.2.1 中间件组织

2.2.2 可修改中间件

2.3 分层系统架构

2.3.1 简单的客户端-服务器架构

2.3.2 多层架构

2.3.3 示例:网络文件系统

2.3.4 示例:Web

2.4 对称分布式系统架构

2.4.1 结构化对等系统

2.4.2 非结构化对等系统

2.4.3 分层组织的对等网络

2.4.4 示例:BitTorrent

2.5 混合系统架构

2.5.1 云计算

2.5.2 边缘-云架构

2.5.3 区块链架构

2.6 小结

第3章 进程

3.1 线程

3.1.1 线程简介

3.1.2 分布式系统中的线程

3.2 虚拟化

3.2.1 虚拟化原理

3.2.2 容器

3.2.3 虚拟机与容器的比较

3.2.4 虚拟机在分布式系统中的应用

3.3 客户端

3.3.1 网络用户界面

3.3.2 虚拟桌面环境

3.3.3 用于分布式透明性的客户端软件

3.4 服务器

3.4.1 常规设计问题

3.4.2 对象服务器

3.4.3 示例:Apache Web服务器

3.4.4 服务器集群

3.5 代码迁移

3.5.1 迁移代码的原因

3.5.2 代码迁移模型

3.5.3 异构系统中的迁移

3.6 小结

第4章 通信

4.1 基础

4.1.1 分层协议

4.1.2 通信的类型

4.2 远程过程调用

4.2.1 基本的RPC操作

4.2.2 参数传递

4.2.3 基于RPC的应用支持

4.2.4 RPC的变体

4.3 面向消息的通信

4.3.1 使用套接字的简单瞬时消息

4.3.2 高级瞬时消息

4.3.3 面向消息的持久通信

4.3.4 示例:高级消息队列协议

4.4 多播通信

4.4.1 基于树的应用层多播

4.4.2 基于泛洪的多播

4.4.3 基于gossip的数据传播

4.5 小结

第5章 协调

5.1 时钟同步

5.1.1 物理时钟

5.1.2 时钟同步算法

5.2 逻辑时钟

5.2.1 Lamport逻辑时钟

5.2.2 向量时钟

5.3 互斥

5.3.1 概述

5.3.2 中心化算法

5.3.3 分布式算法

5.3.4 令牌环算法

5.3.5 去中心化算法

5.3.6 示例:ZooKeeper的简单锁定

5.4 选举算法

5.4.1 欺负算法

5.4.2 环算法

5.4.3 示例:ZooKeeper中的领导选举

5.4.4 示例:Raft中的领导选举

5.4.5 大规模系统中的选举

5.4.6 无线环境中的选举

5.5 基于gossip的同步

5.5.1 聚合

5.5.2 对等采样服务

5.5.3 基于gossip的覆盖网络构建

5.5.4 安全的gossip

5.6 分布式事件匹配

5.6.1 中心化实现

5.6.2 安全的发布-订阅解决方案

5.7 位置系统

5.7.1 全球定位系统

5.7.2 当GPS不可用时

5.7.3 节点的逻辑位置

5.8 小结

第6章 命名

6.1 名字、标识符和地址

6.2 扁平化命名

6.2.1 简单解决方案

6.2.2 基于宿主位置的方法

6.2.3 分布式哈希表

6.2.4 分层方法

6.2.5 安全的扁平化命名

6.3 结构化命名

6.3.1 名字空间

6.3.2 名字解析

6.3.3 名字空间的实现

6.3.4 示例:域名系统

6.3.5 示例:网络文件系统

6.4 基于属性的命名

6.4.1 目录服务

6.4.2 分层实现:LDAP

6.4.3 去中心化的实现

6.5 命名数据网络

6.5.1 概述

6.5.2 路由

6.5.3 命名数据网络中的安全性

6.6 小结

第7章 一致性和复制

7.1 复制简介

7.1.1 复制的原因

7.1.2 作为扩展技术的复制

7.2 以数据为中心的一致性模型

7.2.1 一致的操作顺序

7.2.2 最终一致性

7.2.3 持续一致性

7.3 以客户端为中心的一致性模型

7.3.1 单调读

7.3.2 单调写

7.3.3 读自己的写

7.3.4 写跟随读

7.3.5 示例:ZooKeeper中以客户端为中心的一致性

7.4 副本管理

7.4.1 寻找最佳服务器位置

7.4.2 内容复制和放置

7.4.3 内容分发

7.4.4 管理复制对象

7.5 一致性协议

7.5.1 顺序一致性:基于主服务器的协议

7.5.2 顺序一致性:复制-写协议

7.5.3 缓存一致性协议

7.5.4 实现持续一致性

7.5.5 实现以客户端为中心的一致性

7.6 示例:Web中的缓存和复制

7.7 小结

第8章 容错

8.1 容错简介

8.1.1 基本概念

8.1.2 失效模型

8.1.3 通过冗余屏蔽失效

8.2 进程弹性

8.2.1 进程组的弹性

8.2.2 失效屏蔽和复制

8.2.3 崩溃失效的故障系统中的共识

8.2.4 示例:Paxos算法

8.2.5 具有任意失效的故障系统中的共识

8.2.6 区块链系统中的共识

8.2.7 实现容错的一些限制

8.2.8 失效检测

8.3 可靠的客户端-服务器通信

8.3.1 点对点通信

8.3.2 出现失效时的RPC语义

8.4 可靠多播通信

8.4.1 可靠多播通信简介

8.4.2 可靠多播的可扩展性

8.4.3 原子多播

8.5 分布式提交

8.6 恢复

8.6.1 恢复简介

8.6.2 检查点

8.6.3 消息日志

8.7 小结

第9章 安全

9.1 安全简介

9.1.1 安全威胁、策略和机制

9.1.2 设计问题

9.2 密码学

9.2.1 基础

9.2.2 对称和非对称密码系统

9.2.3 哈希函数

9.2.4 密钥管理

9.3 身份验证

9.3.1 身份验证简介

9.3.2 身份验证协议

9.4 分布式系统中的信任

9.4.1 面临任意失效时的信任

9.4.2 信任一个实体

9.4.3 信任一个系统

9.5 授权

9.5.1 访问控制中的一般问题

9.5.2 基于属性的访问控制

9.5.3 委托

9.5.4 去中心化授权:示例

9.6 监控

9.6.1 防火墙

9.6.2 入侵检测:基础

9.6.3 协同入侵检测

9.7 小结

参考文献

推荐阅读

累计评论(条) 个书友正在讨论这本书 发表评论

发表评论

发表评论,分享你的想法吧!

买过这本书的人还买过

读了这本书的人还在读

回顶部