分布式系统架构架构:策略与难题求解
Neal Ford, Mark Richards, Pramod Sadalage, Zhamak Dehghani
王岩, 邢砚敏, 吴兵华, 梁越 译
出版时间:2023年05月
页数:344
“对于每个要构建现代分布式系统的架构师来说,本书是必读的。”
——Aleksandar Seramoski
Thoughtworks首席咨询师

在软件架构中没有简单的决策。相反,这里困难重重,充满各种问题,并且没有最佳实践。通过本书,你将学会如何用批判性思维来考虑分布式架构中的利弊。
4位作者探讨了选择合适的分布式系统架构的策略,通过贯穿全书的Sysops Squad(一个虚构的技术小组)的传奇故事研究了架构的各种可能性,包括如何确定服务粒度、管理工作流和编排、管理和解耦契约、管理分布式事务,以及如何优化运维特征,例如可伸缩性、弹性和性能。
通过关注常见问题,本书提供了一些技巧来帮助你发现架构问题并进行权衡分析。
通过阅读本书,你将学会:
● 分析利弊并有效记录你的决策。
● 对服务粒度做出更好的决策。
● 理解分解单体应用的复杂性。
● 在高度分布式架构中处理数据。
● 在分解应用程序时管理工作流和事务的模式。
  1. 前言
  2. 第1章 没有最佳实践会怎么样
  3. 1.1 何为“难点”
  4. 1.2 永不过时的软件架构建议
  5. 1.3 数据在架构中的重要性
  6. 1.4 架构决策记录
  7. 1.5 架构适应度函数
  8. 1.6 架构与设计:保持定义简单
  9. 1.7 引入Sysops Squad的传奇故事
  10. 第一部分 分而治之
  11. 第2章 识别软件架构中的耦合
  12. 2.1 架构量子
  13. 2.2 Sysops Squad的传奇故事:理解量子
  14. 第3章 架构模块化
  15. 3.1 模块化的驱动因素
  16. 3.2 Sysops Squad的传奇故事:创建业务案例
  17. 第4章 架构分解
  18. 4.1 代码库能分解吗
  19. 4.2 基于组件的分解
  20. 4.3 战术分叉
  21. 4.4 Sysops Squad的传奇故事:走上分解之路
  22. 第5章 基于组件的分解模式
  23. 5.1 识别和调整组件模式
  24. 5.2 收集公共领域组件模式
  25. 5.3 扁平化组件模式
  26. 5.4 明确组件依赖项模式
  27. 5.5 构建组件领域模式
  28. 5.6 构建领域服务模式
  29. 5.7 总结
  30. 第6章 分离业务型数据
  31. 6.1 数据分解的驱动因素
  32. 6.2 分解单体数据
  33. 6.3 数据库类型的选择
  34. 6.4 Sysops Squad的传奇故事:多维数据库
  35. 第7章 服务粒度
  36. 7.1 粒度分解因素
  37. 7.2 粒度集成因素
  38. 7.3 找到正确的平衡
  39. 7.4 Sysops Squad的传奇故事:工单分配粒度
  40. 7.5 Sysops Squad的传奇故事:客户注册粒度
  41. 第二部分 合而为一
  42. 第8章 复用模式
  43. 8.1 代码复制
  44. 8.2 共享库
  45. 8.3 共享服务
  46. 8.4 边车和服务网格
  47. 8.5 Sysops Squad的传奇故事:公共基础设施逻辑
  48. 8.6 代码复用:何时带来价值
  49. 8.7 Sysops Squad的传奇故事:共享领域功能
  50. 第9章 数据所有权和分布式事务
  51. 9.1 分配数据所有权
  52. 9.2 单一所有权场景
  53. 9.3 公共所有权场景
  54. 9.4 共同所有权场景
  55. 9.5 数据所有权总结
  56. 9.6 分布式事务
  57. 9.7 最终一致性模式
  58. 9.8 Sysops Squad的传奇故事:工单处理的数据所有权
  59. 第10章 分布式数据访问
  60. 10.1 服务间通信模式
  61. 10.2 列schema复制模式
  62. 10.3 复制缓存模式
  63. 10.4 数据领域模式
  64. 10.5 Sysops Squad的传奇故事:工单分配的数据访问
  65. 第11章 管理分布式工作流
  66. 11.1 集中编排式通信
  67. 11.2 分散协作式通信
  68. 11.3 权衡集中编排与分散协作
  69. 11.4 Sysops Squad的传奇故事:工作流管理
  70. 第12章 事务Saga
  71. 12.1 事务Saga的8种模式
  72. 12.2 状态管理与最终一致性
  73. 12.3 管理Saga的手段
  74. 12.4 Sysops Squad的传奇故事:原子性事务和补偿更新
  75. 第13章 契约
  76. 13.1 严格契约与宽松契约
  77. 13.2 微服务中的契约
  78. 13.3 邮戳耦合
  79. 13.4 Sysops Squad的传奇故事:管理工单契约
  80. 第14章 管理分析型数据
  81. 14.1 以前的方法
  82. 14.2 数据网格
  83. 14.3 Sysops Squad的传奇故事:数据网格
  84. 第15章 打造你自己的权衡分析
  85. 15.1 找出彼此纠缠的部分
  86. 15.2 权衡利弊的技巧
  87. 15.3 Sysops Squad的传奇故事:尾声
书名:分布式系统架构架构:策略与难题求解
译者:王岩, 邢砚敏, 吴兵华, 梁越 译
国内出版社:机械工业出版社
出版时间:2023年05月
页数:344
书号:978-7-111-72422-3
原版书书名:Software Architecture: The Hard Parts
原版书出版商:O'Reilly Media
Neal Ford
 
Neal Ford是Thoughtworks公司的总监、软件架构师和meme wrangler。
 
 
Mark Richards
 
Mark Richards是一位经验丰富的软件架构师,他参与了微服务架构、事件驱动架构和其他分布式架构的架构、设计和实现。
Mark Richards is an accomplished author and conference speaker working as a handson SOA and enterprise architect in the financial services industry. In addition to numerous published articles, he is the author of Java Transaction Design Strategies (C4Media), contributing author of 97 Things Every Software Architect Should Know (O’Reilly), and contributing author of No Fluff, Just Stuff Anthology Volumes 1 and 2
(Pragmatic Bookshelf). He is a recognized authority on messaging, Service-Oriented Architecture, and transaction management. Mark is a regular speaker on the NFJS
Software Symposium series and speaks at conferences around the world.
 
 
Pramod Sadalage
 
Pramod Sadalage是Thoughtworks的数据及DevOps总监,他擅长应用程序开发、敏捷数据库开发、演进式数据库设计、算法设计和数据库管理。
 
 
Zhamak Dehghani
 
Zhamak Dehghani是Thoughtworks的技术总监。她专注于企业中的分布式系统和数据架构领域,是多个技术咨询委员会的成员,包括Thoughtworks的技术委员会。Zhamak倡导一切事物的去中心化,包括架构、数据等。她是DataMesh的创始人。
 
 
购买选项
定价:139.00元
书号:978-7-111-72422-3
出版社:机械工业出版社