分布式系统架构

分布式系统架构

作者:[美]尼尔·福特

出版社:机械工业出版社

出版年:2023-5-1

ISBN:9787111724223

所属分类:行业好书

书刊介绍

内容简介

Neal Ford是全球性技术咨询公司Thoughtworks的技术总监、软件架构师及meme wrangler。

Mark Richards是一位经验丰富的软件架构师,在设计和实现微服务架构、面向服务的架构和分布式架构方面有丰富的经验。

Pramod Sadalage是Thoughtworks的数据及DevOps总监,他擅长应用程序开发、敏捷数据库开发、演进式数据库设计、算法设计和数据库管理。

Zhamak Dehghani是Thoughtworks的技术总监,专注于分布式架构和新兴技术领域。她也是Data Mesh的创始人。

作品目录

前言1
第1章 没有最佳实践会怎么样5
1.1 何为“难点”6
1.2 永不过时的软件架构建议6
1.3 数据在架构中的重要性7
1.4 架构决策记录8
1.5 架构适应度函数9
1.6 架构与设计:保持定义简单15
1.7 引入Sysops Squad的传奇故事17
第一部分 分而治之
第2章 识别软件架构中的耦合25
2.1 架构量子27
2.2 Sysops Squad的传奇故事:理解量子38
第3章 架构模块化41
3.1 模块化的驱动因素44
3.2 Sysops Squad的传奇故事:创建业务案例51
第4章 架构分解55
4.1 代码库能分解吗56
4.2 基于组件的分解61
4.3 战术分叉62
4.4 Sysops Squad的传奇故事:走上分解之路66
第5章 基于组件的分解模式68
5.1 识别和调整组件模式71
5.2 收集公共领域组件模式78
5.3 扁平化组件模式84
5.4 明确组件依赖项模式92
5.5 构建组件领域模式98
5.6 构建领域服务模式103
5.7 总结106
第6章 分离业务型数据107
6.1 数据分解的驱动因素108
6.2 分解单体数据123
6.3 数据库类型的选择131
6.4 Sysops Squad的传奇故事:多维数据库146
第7章 服务粒度152
7.1 粒度分解因素154
7.2 粒度集成因素162
7.3 找到正确的平衡169
7.4 Sysops Squad的传奇故事:工单分配粒度171
7.5 Sysops Squad的传奇故事:客户注册粒度173
第二部分 合而为一
第8章 复用模式179
8.1 代码复制180
8.2 共享库182
8.3 共享服务186
8.4 边车和服务网格190
8.5 Sysops Squad的传奇故事:公共基础设施逻辑194
8.6 代码复用:何时带来价值196
8.7 Sysops Squad的传奇故事:共享领域功能198
第9章 数据所有权和分布式事务202
9.1 分配数据所有权203
9.2 单一所有权场景204
9.3 公共所有权场景204
9.4 共同所有权场景206
9.5 数据所有权总结212
9.6 分布式事务213
9.7 最终一致性模式215
9.8 Sysops Squad的传奇故事:工单处理的数据所有权224
第10章 分布式数据访问227
10.1 服务间通信模式228
10.2 列schema复制模式230
10.3 复制缓存模式231
10.4 数据领域模式234
10.5 Sysops Squad的传奇故事:工单分配的数据访问236
第11章 管理分布式工作流239
11.1 集中编排式通信241
11.2 分散协作式通信244
11.3 权衡集中编排与分散协作251
11.4 Sysops Squad的传奇故事:工作流管理252
第12章 事务Saga257
12.1 事务Saga的8种模式258
12.2 状态管理与最终一致性279
12.3 管理Saga的手段282
12.4 Sysops Squad的传奇故事:原子性事务和补偿更新284
第13章 契约290
13.1 严格契约与宽松契约291
13.2 微服务中的契约295
13.3 邮戳耦合299
13.4 Sysops Squad的传奇故事:管理工单契约301
第14章 管理分析型数据303
14.1 以前的方法303
14.2 数据网格309
14.3 Sysops Squad 的传奇故事:数据网格314
第15章 打造你自己的权衡分析317
15.1 找出彼此纠缠的部分318
15.2 权衡利弊的技巧321
15.3 Sysops Squad的传奇故事:尾声331
· · · · · ·

作者简介

Neal Ford是全球性技术咨询公司Thoughtworks的技术总监、软件架构师及meme wrangler。

Mark Richards是一位经验丰富的软件架构师,在设计和实现微服务架构、面向服务的架构和分布式架构方面有丰富的经验。

Pramod Sadalage是Thoughtworks的数据及DevOps总监,他擅长应用程序开发、敏捷数据库开发、演进式数据库设计、算法设计和数据库管理。

Zhamak Dehghani是Thoughtworks的技术总监,专注于分布式架构和新兴技术领域。她也是Data Mesh的创始人。

精彩摘录

Thesethreeprogressionstowardmodularitydemonstratethatasthelevelofarchitecturalmodularityincreases,sodoesmaintainability,makingiteasiertoadd,change,orremovefunctionality.

——引自第54页


Howdoarchitectsdeterminethesizeandcommunicationstylesformicroservices?Determiningthepropersizeformicroservicesseemsapervasiveproblem—toosmallservicescreatetransactionalandorchestrationissues,andtoo-largeservicescreatescaleanddistributionissues.

——引自第28页

相关推荐

微信二维码