搜索
高级检索
高级搜索
书       名 :
著       者 :
出  版  社 :
I  S  B  N:
文献来源:
出版时间 :
构建可扩展分布式系统:方法与实践
0.00     定价 ¥ 109.00
图书来源: 浙江图书馆(由JD配书)
此书还可采购25本,持证读者免费借回家
  • 配送范围:
    浙江省内
  • ISBN:
    9787111750697
  • 作      者:
    [美]伊恩·戈顿(Ian Gorton)
  • 出 版 社 :
    机械工业出版社
  • 出版日期:
    2024-05-01
收藏
编辑推荐
在许多系统中,随着用户群的增长,可扩展性成为发展的主要驱动力。有吸引力和高度实用的功能带来了成功,同时也带来了更多需要处理的请求和更多需要管理的数据。但是,当在轻负载下有意义的设计决策突然变成技术债务时,企业就会达到一个临界点。本书涵盖了可以快速、经济、高效地扩展应用程序的设计方法和技术。
作者Ian Gorton带领软件架构师和开发人员学习分布式系统设计的基本原则。你将探索可扩展解决方案的基本要素,包括复制、状态管理、负载均衡和缓存。本书还会重点介绍可扩展性对数据库、微服务和基于事件的流系统的影响。
通过学习本书,你将能够:
? 学习可扩展系统的基础知识:可扩展性的基本设计原则、成本、并发性和架构权衡。
? 设计可扩展的服务:深入探讨服务设计、缓存、异步消息传递、无服务器处理和微服务。
? 设计可扩展的数据系统:学习数据系统基础知识、NoSQL 数据库以及最终一致性与强一致性。
? 设计可扩展的流系统:探索流处理系统和可扩展的事件驱动处理机制。
展开
作者简介
Ian Gorton作为软件架构师、作家、计算机科学教授和顾问,在该领域拥有30年的从业经验。从研究生开始,他就专注于分布式技术,并在银行、电信、政府、医疗保健行业以及科学建模和仿真等领域从事大型软件系统的工作。Ian撰写了3本书,并发表了200多篇关于软件架构和软件工程的文章。在卡内基梅隆大学软件工程学院,他领导了大数据和大规模可扩展系统的研发项目。2015年,他加入美国东北大学,成为计算机科学教授,自此一直致力于相关主题的工作、写作和演讲。他还拥有英国谢菲尔德哈勒姆大学的博士学位,是IEEE计算机学会高级会员。
展开
内容介绍
本书介绍了一系列可用于构建可扩展系统的软件架构方法和分布式技术。本书内容分为四部分:第一部分是基础知识,包括实现可扩展系统的基本机制、分布式系统的基本特征以及并发编程的简介;第二部分重点介绍如何扩展处理请求的能力,涵盖通过诸多架构方法(更多的计算资源、负载均衡、分布式缓存、异步消息以及基于微服务的架构)来扩展系统;第三部分介绍扩展数据层的相关知识,这是分布式系统理论最突出的地方;第四部分介绍用于大规模处理流式事件的架构和技术。
展开
目录
目录
前言1
第一部分 基础知识7
第1章 可扩展系统简介9
1.1 可扩展性的定义9
1.2 21世纪早期系统规模案例11
1.3 软件系统发展简史 13
1.4 可扩展性系统设计基本原则14
1.5 可扩展性与成本16
1.6 可扩展性与架构的权衡18
1.7 总结和延伸阅读21
第2章 分布式系统架构简介22
2.1 系统架构基础22
2.2 水平扩展24
2.3 使用缓存扩展数据库26
2.4 分布式数据库28
2.5 多处理层28
2.6 提高系统响应能力31
2.7 系统和硬件的可扩展性32
2.8 总结和延伸阅读35
第3章 分布式系统要点36
3.1 通信基础36
3.2 远程方法调用43
3.3 局部故障48
3.4 分布式系统中的共识52
3.5 分布式系统中的时间53
3.6 总结和延伸阅读55
第4章 并发系统概述57
4.1 为什么要并发57
4.2 线程60
4.3 线程执行顺序62
4.4 线程引入的问题64
4.5 线程的状态72
4.6 线程间的协调73
4.7 线程池76
4.8 同步屏障78
4.9 线程安全集合80
4.10 总结和延伸阅读81
第二部分 可扩展系统83
第5章 应用服务85
5.1 服务设计85
5.2 应用服务器93
5.3 水平扩展96
5.4 负载均衡97
5.5 总结和延伸阅读103
第6章 分布式缓存104
6.1 应用缓存104
6.2 Web缓存108
6.3 总结和延伸阅读112
第7章 异步消息传递114
7.1 消息传递简介115
7.2 示例:RabbitMQ119
7.3 消息传递模式126
7.4 总结和延伸阅读129
第8章 无服务器处理系统130
8.1 无服务器的魅力130
8.2 GAE131
8.3 AWS Lambda135
8.4 案例研究:平衡吞吐量和成本139
8.5 总结和延伸阅读142
第9章 微服务144
9.1 转向微服务144
9.2 微服务的弹性151
9.3 总结和延伸阅读158
第三部分 可扩展的分布式数据库161
第10章 可扩展数据库基础163
10.1 分布式数据库163
10.2 扩展关系数据库164
10.3 向 NoSQL 转变169
10.4 CAP定理178
10.5 总结和延伸阅读179
第11章 最终一致性180
11.1 什么是最终一致性180
11.2 可调节一致性183
11.3 读取和写入仲裁185
11.4 副本修复187
11.5 冲突处理189
11.6 总结和延伸阅读194
第12章 强一致性196
12.1 强一致性简介197
12.2 一致性模型198
12.3 分布式事务199
12.4 分布式共识算法203
12.5 总结和延伸阅读213
第13章 分布式数据库实践案例215
13.1 Redis215
13.2 MongoDB220
13.3 Amazon DynamoDB226
13.4 总结和延伸阅读232
第四部分 事件和流处理235
第14章 可扩展的事件驱动处理237
14.1 事件驱动架构237
14.2 Apache Kafka239
14.3 总结和延伸阅读248
第15章 流处理系统250
15.1 流处理简介251
15.2 流处理平台253
15.3 案例研究:Apache Flink255
15.4 总结和延伸阅读261
第16章 可扩展系统的基本要素262
16.1 自动化262
16.2 可观测性264
16.3 部署平台264
16.4 数据湖265
16.5 总结和延伸阅读265
展开
加入书架成功!
收藏图书成功!
我知道了(3)
发表书评
读者登录

请选择您读者所在的图书馆

选择图书馆
浙江图书馆
点击获取验证码
登录
没有读者证?在线办证