• 构建可扩展分布式系统:方法与实践 9787111750697
21年品牌 40万+商家 超1.5亿件商品

构建可扩展分布式系统:方法与实践 9787111750697

正版图书,可开发票,请放心购买。

81.75 7.5折 109 全新

库存14件

广东广州
认证卖家担保交易快速发货售后保障

作者[美]伊恩戈顿

出版社机械工业出版社

ISBN9787111750697

出版时间2024-05

装帧平装

开本16开

定价109元

货号29731560

上书时间2024-10-26

哲仁书店

已实名 已认证 进店 收藏店铺

   商品详情   

品相描述:全新
商品描述
前言
前言

本书围绕“软件系统大规模运行的能力日益成为定义成功的关键因素”这一论点而编写。 随着世界的关联性日渐加强,系统的大规模运行只会变得更加普遍。因此,本书的目标 是为读者提供分布式和并发系统的核心知识。本书还会介绍一系列可用于构建可扩展系 统的软件架构方法和分布式技术。
软件系统可扩展性的重要性
世界变化的步伐快得令人生畏。创新每天都在涌现,不断为我们所有人创造用于互动、 开展业务、娱乐……甚至阻断疾病流行的新能力。大部分创新的动力源于软件,这些软 件由大型互联网公司的开发者大军、初创公司的精干小团队以及介于两者之间的各种规 模的团队编写。
交付及时响应用户需求的软件系统已经足够困难,而在大规模系统面前,这项任务变 得更加艰巨。我们都知道系统暴露在意想不到的高负载之下时会突然失效—在最 好的情况下,这会对组织造成不良影响,最坏的情况下甚至会导致员工失业或公司 倒闭。
软件系统不同于物理系统,因为它是无定形的,它的物理形式( 1 和 0)与实际功能没有任何相似之处。我们绝不会期望在一夜之间将一个500人的小村庄变成一个1000万人口的大城市。但是,对于软件系统,我们有时期待它能处理的请求数是设计时的1000倍。不出所料,结果很少如人意。
目标读者
本书的主要目标读者是在分布式并发系统领域毫无经验或经验有限的软件工程师和架构 师。他们需要加深理论知识学习和积累设计实践经验,以迎接构建面向互联网的大规模 应用程序所带来的挑战。

你将从本书收获什么
本书从可扩展性的角度涵盖了并发和分布式系统的概况。将可扩展性与其他架构特性完 全分开是不现实的,但可扩展性是本书讨论的主要焦点。当然,架构的其他特性也必然 会发挥作用,性能、可用性和一致性常常是人们关注的焦点。
构建分布式系统需要对分布式和并发有一些基本的了解—这些知识贯穿本书,并反复 出现。反复出现是必要的,因为分布式系统中的两个基本问题使本书的各个主题变得复 杂,如下所述。
第一,尽管整个系统几乎始终完美运行,但系统的个别部分随时可能会出现故障。当一 个组件出现故障(硬件崩溃、网络中断、服务器错误等)时,我们必须采取相应技术来 保证系统继续运行并能从故障中恢复。每个分布式系统都会经历组件故障,它们通常以 奇怪、神秘和无法预料的方式出现。
第二,创建可扩展的分布式系统需要多个活动组件的协调。每个组件都需要遵守协议并 尽可能快地处理请求。哪怕只有一个组件导致请求延迟,都有可能导致整个系统性能不 佳,甚至最终崩溃。
有大量的文献可以帮助你解决这些问题。幸运的是,还有大量技术可以帮助我们构建容 错且可扩展的分布式系统。这些技术包含了难以正确构建的理论方法和复杂算法。在广 泛适用的平台级技术的指导下,我们可以站在巨人的肩膀上构建复杂的业务解决方案。
具体来说,本书的读者将学到:
?   分布式系统的基本特征,包括状态管理、时间协调、并发性、通信和协调。
?   用于构建可扩展的健壮服务的架构方法和支持技术。
?   分布式数据库如何运行以及如何用于构建可扩展的分布式系统。
?   用于构建基于事件的流系统的架构和技术,例如 Apache Kafka 和 Flink。

导语摘要
本书介绍了一系列可用于构建可扩展系统的软件架构方法和分布式技术。本书内容分为四部分:第一部分是基础知识,包括实现可扩展系统的基本机制、分布式系统的基本特征以及并发编程的简介;第二部分重点介绍如何扩展处理请求的能力,涵盖通过诸多架构方法(更多的计算资源、负载均衡、分布式缓存、异步消息以及基于微服务的架构)来扩展系统;第三部分介绍扩展数据层的相关知识,这是分布式系统理论最突出的地方;第四部分介绍用于大规模处理流式事件的架构和技术。

作者简介
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

内容摘要
本书介绍了一系列可用于构建可扩展系统的软件架构方法和分布式技术。本书内容分为四部分:第一部分是基础知识,包括实现可扩展系统的基本机制、分布式系统的基本特征以及并发编程的简介;第二部分重点介绍如何扩展处理请求的能力,涵盖通过诸多架构方法(更多的计算资源、负载均衡、分布式缓存、异步消息以及基于微服务的架构)来扩展系统;第三部分介绍扩展数据层的相关知识,这是分布式系统理论最突出的地方;第四部分介绍用于大规模处理流式事件的架构和技术。

主编推荐
Ian Gorton作为软件架构师、作家、计算机科学教授和顾问,在该领域拥有30年的从业经验。从研究生开始,他就专注于分布式技术,并在银行、电信、政府、医疗保健行业以及科学建模和仿真等领域从事大型软件系统的工作。Ian撰写了3本书,并发表了200多篇关于软件架构和软件工程的文章。在卡内基梅隆大学软件工程学院,他领导了大数据和大规模可扩展系统的研发项目。2015年,他加入美国东北大学,成为计算机科学教授,自此一直致力于相关主题的工作、写作和演讲。他还拥有英国谢菲尔德哈勒姆大学的博士学位,是IEEE计算机学会高级会员。

   相关推荐   

—  没有更多了  —

以下为对购买帮助不大的评价

此功能需要访问孔网APP才能使用
暂时不用
打开孔网APP