知识全景图 / 软件工程与系统 / 软件架构总览
Architecture Landscape

软件架构总览

架构不是一步到位的设计图,而是一组持续演进的判断和取舍。这张页把架构知识按"决策层 → 设计层 → 实现与运行层"组织, 帮你快速定位当前最需要补的判断框架。

10 张专题页
覆盖架构决策、设计、接口、集成、IAM、数据契约等
8 层路线
从业务目标到演进治理的完整架构设计路线
15+ 本
技术书架中的架构相关经典
按需进入
先判断卡在哪一层,再读专题
读法原则: 架构学习容易陷入"先学某个模式,然后找地方套"。建议先确认你当前要解决的问题落在哪一层——是不知道怎么写架构决策记录(ADR),还是不确定微服务拆多细,还是想知道怎么管架构债——再进对应专题。读完专题后可以回到 阅读路线 找下一步,或者去 判断训练 验证理解。
一、架构知识全景

架构知识按"决策 → 设计 → 实现 → 运行 → 演进"组织,每个模块下已有或待建的专题页对应具体问题。

架构决策与评审
决策
ADR、架构评审、技术原则、例外管理、风险评估和适应度函数——让重要决策有理由、有边界、有复查点。
ADR评审技术原则
通用架构设计路线
方法
8 层 20 步的架构设计方法:从业务目标、系统边界、模块服务、数据状态、接口集成到可靠运维和演进治理。
8层路线设计评审20步
API 与系统集成
集成
API 风格选型(REST/gRPC/GraphQL)、幂等性、版本策略、外部系统集成模式和失败处理。
RESTgRPC幂等
身份认证与 IAM
安全
认证协议(OAuth2/SAML/OIDC)、权限模型(RBAC/ABAC/ReBAC)、MFA、Session 管理和企业 IAM 架构。
OAuth2RBACSSO
数据契约
数据
服务间数据交换的契约设计:Schema 管理、兼容性策略、版本演化和消费者驱动的契约测试。
Schema契约测试兼容性
补偿、对账与重放
可靠性
Saga 补偿、对账机制、事件重放、幂等恢复和最终一致性场景下的数据修复策略。
Saga对账重放
架构债
演进
架构债分类、度量、优先级和偿还策略:识别哪些是"可接受的短期债",哪些是"必须还的高利贷"。
技术债重构演进
API 生命周期管理
治理
API 从设计、发布、版本化、废弃到退出的全生命周期治理,以及 API 网关、门户和合规策略。
生命周期治理废弃
端到端案例:费用报销
案例
从业务需求、系统边界到模块协作、状态机、对账和发布治理的完整架构案例——以费控报销支付为场景。
案例端到端费控
二、8 层架构设计路线

以下 8 层来自 通用软件架构设计路线,每层对应一组架构判断问题。灰色表示当前暂无独立专题页,可从设计路线页获得方法。

核心问题对应专题
1. 业务目标与约束 为什么做?成功怎么衡量?哪些约束会改变架构选择? 缺专题页 → 见 设计路线
2. 系统边界与核心对象 系统负责什么、不负责什么?核心对象和责任边界是否清楚? 缺专题页 → 见 设计路线
3. 模块与服务设计 先模块化还是服务化?职责、依赖和团队承接能力是否对齐? 缺专题页 → 见 设计路线
4. 数据与状态架构 数据谁拥有?状态谁推进?生命周期如何管理? 缺专题页 → 见 数据系统
5. 接口与集成架构 系统之间通过什么协作?同步/异步/第三方失败如何处理? API 集成 · 数据契约
6. 安全、可靠性与一致性 谁能访问什么?哪些必须强一致?失败后怎样恢复? IAM · 补偿对账
7. 运维、可观测与发布 系统能否被看见、发布、扩容和稳定运行? 缺专题页 → 见 平台与可靠性
8. 演进治理与场景验证 未来怎样迁移和偿债?真实业务链路是否闭环? 决策评审 · 架构债
三、架构书页

以下书页在 pages/tech/books/ 中,与架构分支直接相关。按"设计思想 → 模式方法 → 演进治理"组织。

类别书页一句话
设计思想 软件架构基础 架构思维、架构角色、架构风格和决策方法
软件设计哲学 复杂性的本质、模块化、测试与设计的关系
模式与方法 数据密集型应用系统设计 数据存储、复制、分区、事务、一致性和分布式系统的基石
领域驱动设计 DDD 战略设计(限界上下文/上下文映射)和战术设计(聚合/实体/值对象)
实现领域驱动设计 DDD 落地的模式、战术设计和实际案例
企业集成模式 消息路由、转换、端点和系统管理模式的经典汇编
演进与治理 演进式架构 适应度函数、增量变更和架构治理的进化机制
微服务模式 微服务分解、通信、数据、安全和可观测性模式
从单体到微服务 增量迁移的策略、风险权衡和拆分解耦模式
组织与协作 团队拓扑 团队类型、交互模式和认知负荷如何决定架构边界
加速 软件交付的度量指标、技术实践和团队效能
需要入口页: 当前架构分支有 9 张专题页但缺少阅读导航和判断训练。建议继续看 阅读路线 ← 按角色和时间推荐读法,或 判断训练 ← 用架构问题练习判断。