Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

可靠系统设计与电商架构

System Design: Reliable Systems and E-Commerce Architecture

这是一本面向中高级工程师、技术负责人和架构师的系统设计实践书。全书围绕“如何设计能够长期运行的复杂系统”展开,覆盖系统设计方法论、生产可靠性、数据一致性、长流程治理,以及商品、库存、营销、计价、订单、支付和履约等电商核心领域。

本书不止讨论如何画出架构图,更关注系统在真实生产环境中如何面对流量增长、故障恢复、数据不一致、业务变更、对账补偿和资损风险,帮助读者建立从问题定义、边界划分、数据建模、架构权衡,到上线治理、故障复盘和持续演进的完整系统设计方法。

本书强调三个判断:

  • 系统设计首先是业务边界、数据事实和失败语义的设计,不只是组件堆叠。
  • 架构方案必须能经受生产环境的流量、故障、变更、对账和资损风险考验。
  • 电商系统是理解复杂业务系统的高密度样本,商品、库存、营销、计价、订单、支付和供应商同步能覆盖大量通用架构问题。

适合读者

  • 已有后端开发经验,希望系统化提升架构设计能力的工程师。
  • 正在负责业务系统拆分、重构、稳定性治理或技术方案评审的技术负责人。
  • 希望通过电商场景理解交易链路、一致性、对账、补偿和资损防控的读者。

本书结构

  1. 系统设计方法论(第 1-9 章):问题定义、方案设计、业务边界、内部结构、系统集成、架构质量与编码落地。
  2. 生产治理(贯穿第 3、4、7 章和第 11-15 章):覆盖可靠性、对账补偿、DLQ、故障恢复、资损防控、容量规划、限流、熔断和降级。
  3. 电商系统设计实战(第 10-15 章):电商全景、商品供给、库存、营销与计价,以及从商品发现到履约售后的 C 端交易链路。
  4. 附录基础资料(附录 A-C):术语表用于统一概念,参考文献与外链支持继续深入,工具与构建说明用于本地阅读和维护。

全书逐章速览

第一部分:系统设计方法论

章节主题内容速览阅读收获
第 1 章系统设计与架构从系统设计的核心问题、容量成本权衡和一致性取舍出发,把架构判断组织成可评审、可执行、可复盘的技术方案。建立从问题定义到 TD 落地的设计表达能力。
第 2 章编码、重构与 Code Review把架构意图落到代码边界、重构节奏和评审标准中,讨论如何避免 Controller、Service、DAO 与外部依赖混杂。用代码结构和 Review 持续守住系统可演进性。
第 3 章生产系统治理以治理、保障和技术债务的反馈环为主线,拆解 SLO、错误预算、韧性设计、应急保障和还债机制。能把稳定性、债务和交付速度放进同一套治理框架评估。
第 4 章大事务处理从电商创单切入,比较同步 RPC、Saga、TCC、Outbox 和补偿机制,说明跨系统副作用如何收敛。设计可恢复、可补偿、可审计的大事务链路。
第 5 章长生命周期业务流程区分大事务和长流程,围绕订单、商品、退款、入驻和审批等场景展开状态机、编排、恢复与治理。掌握业务对象跨阶段推进的状态建模和恢复设计。
第 6 章任务处理与 Agent 协作从短任务、长任务、后台任务到 Agent 协作,梳理任务生命周期、调度、幂等、重试、可观测和人机协同边界。为异步任务和长任务系统建立清晰的执行与治理模型。
第 7 章高准确性与强一致性设计聚焦支付、库存和账务等不能只靠最终一致性口号兜底的场景,强调权威事实、CP 核心段、幂等和对账。能优先保护业务事实,并为强一致链路设计吞吐边界。
第 8 章低延迟复杂读面向搜索、推荐、广告和 Feed,分析读写不对称、复杂查询、结果质量和性能耦合下的读模型与缓存策略。设计高性能读路径,并说明一致性、相关性和延迟取舍。
第 9 章高并发写入与热点治理以秒杀、社交互动和流量洪峰为代表,讨论削峰、排队、热点隔离、快反馈和后端异步收敛。能识别极端写入热点,并设计抗洪峰的写链路。

第二部分:电商系统设计实战

章节主题内容速览阅读收获
第 10 章电商系统全景从业务架构、应用架构、数据架构和技术架构拆解电商核心域与支撑域,建立交易与支付主线。用全景图识别电商系统边界、依赖和核心风险。
第 11 章商品中心、商品供给与生命周期治理合并商品主数据、供给入口、批量任务、审核、库存协同、发布一致性和生命周期治理,建立从来源输入到交易快照的端到端模型。设计可恢复、可审计、可演进的商品供给与商品中心平台。
第 12 章库存系统讨论库存的通用模型、虚拟库存、可售锁定已售、并发扣减、超卖防控、释放和对账补偿。区分热路径和权威路径,设计高并发且最终正确的库存系统。
第 13 章营销与计价系统合并优惠券、积分、活动规则、预算控制、资格校验、营销库存、价格层、会员权益、税费和运费,覆盖试算、锁定、核销、释放、复算和大促降级。设计可叠加、可核销、可解释、可复算且能控制资损的营销与计价链路。
第 14 章商品发现与交易准备从搜索、详情和动态报价进入购物车与结算,说明读模型一致性、交易前校验和资源预占。设计低延迟的商品发现链路,并把购买意愿收敛为有期限、可校验的结算凭证。
第 15 章订单与履约全生命周期从创单开始,展开订单状态机、支付事实、履约编排、售后退款和生产治理。设计可追溯、可恢复的订单、资金与交付闭环。

附录

条目主题内容速览阅读收获
附录 A术语表汇总架构、一致性、可靠性与电商概念,区分术语定义和工程目标。查阅全书共同语言与能力边界。
附录 B参考文献与外链索引经典著作、原始论文和组件官方文档。按主题继续阅读并核验版本敏感行为。
附录 C工具与构建说明说明 mdBook、Mermaid 和本地构建入口。构建与预览书稿。

阅读路线

  • 架构主线:第 1-9 章,配合第 10-15 章电商实战。适合希望建立完整系统设计框架的读者。
  • 电商实战主线:第 10-15 章;可按“商品发现与结算”(第 14 章)和“创单、支付与履约”(第 15 章)连续阅读。
  • 可靠性主线:第 3、4、7 章,结合第 15 章订单、支付和履约闭环阅读。适合做稳定性、故障恢复和资损防控治理。
  • 基础补齐主线:附录 A-B,配合各章参考资料。先统一术语,再按当前问题查阅原始文献和组件官方手册。

使用建议

读这本书时,不建议只记结论。更好的方式是每读完一个系统章,都回答四个问题:

  1. 这个系统的权威数据是什么?
  2. 它负责什么,又明确不负责什么?
  3. 它和上下游如何协作,失败后由谁补偿?
  4. 它的监控、对账、灰度、回滚和资损防控怎么设计?

如果能把这四个问题说清楚,就已经从“功能设计”进入了“系统设计”。

本地构建

需安装 mdBook。本书复用 tools/mermaid-preprocessor.py 处理 Mermaid 图表。

cd books/reliable-system-design
mdbook build
mdbook serve

也可以在仓库根目录生成到 Hexo 本地预览目录并启动服务:

npm run server:reliable-system-design

启动后访问:

http://localhost:3000/reliable-system-design/