posts

系统架构设计

系统架构设计是工程师职业进阶的核心分水岭。本专题从架构设计原则出发,覆盖单体到微服务的演进路径、领域驱动设计 DDD 的战略与战术设计、云原生架构模式(十二要素应用、Serverless、Service Mesh)、分布式系统核心挑战(CAP/BASE、一致性算法、分布式事务)、高可用与容灾架构设计、容量规划与性能基线方法、技术选型决策框架,以及架构评审与技术债务治理实践,帮助开发者建立从需求分析到技术方案落地的系统化架构思维能力,并延伸单元化架构、架构适应度函数、零信任落地、平台工程、多区域双活与 AI 原生架构等现代架构实践。

系统架构设计

本专题从架构设计基础原则出发,深入讲解单体到微服务的演进、领域驱动设计(DDD)、云原生架构模式、服务治理、容量规划与架构评审等核心主题,帮助你建立完整的系统架构设计知识体系。

学习目标


文章目录

核心基础

  1. 架构设计基础原则 ——SOLID、高内聚低耦合、分层架构、CAP 与 BASE 理论
  2. 单体应用 vs 微服务 ——演进路径、拆分策略、康威定律、微服务利弊分析
  3. 领域驱动设计(DDD) ——限界上下文、聚合、实体、值对象、领域事件与事件风暴
  4. 架构模式与设计模式 ——分层架构、管道-过滤器、微内核、事件驱动、微服务、空间架构

服务架构

  1. API 网关与 BFF 架构 ——网关职责、BFF 模式、GraphQL 网关、认证与路由
  2. 前端与 BFF 进阶 ——微前端、SSR/SSG 架构、边缘计算、BFF 分层设计
  3. 服务注册发现与负载均衡 ——Eureka、Consul、Nacos、客户端/服务端发现、负载均衡算法
  4. 分布式配置中心 ——Spring Cloud Config、Nacos、Apollo、配置热更新与灰度发布
  5. 服务网格与 Istio ——Sidecar 模式、流量管理、mTLS、可观测性

稳定性与可观测性

  1. 熔断、降级与限流 ——Hystrix、Sentinel、令牌桶/漏桶、舱壁隔离
  2. 高可用架构与故障容错 ——主备/主从/多活、故障检测、自动切换、灾备演练
  3. 分布式链路追踪 ——Jaeger、Zipkin、OpenTelemetry、TraceID 透传与长尾分析
  4. 消息驱动架构(EDA) ——事件总线、消息队列选型、事件契约、幂等性设计

数据与一致性

  1. 分布式数据一致性 ——CAP/BASE、2PC/3PC、TCC、Saga、Seata
  2. 性能优化与扩展性设计 ——读写分离、分库分表、缓存分层、CDN、容量规划
  3. 大数据架构 ——Lambda/Kappa 架构、实时计算、数据湖、湖仓一体

安全与部署

  1. 安全架构设计 ——零信任、认证授权、数据加密、mTLS、密钥管理
  2. 云原生架构模式 ——Sidecar、Service Mesh、Serverless、FaaS、GitOps
  3. 弹性计算与多云架构 ——K8s 扩缩容、Serverless、FinOps、边缘计算
  4. 多租户架构设计 ——共享 Schema/独立 Schema/独立数据库、租户路由、数据隔离

治理与评审

  1. CQRS 与事件溯源 ——读写分离、事件存储、快照、投影与一致性保障
  2. SLA/SLO/SLI 与容量规划 ——可用性目标定义、容量模型、压测方法论、扩容策略
  3. 架构评审与技术债管理 ——ATAM 方法、技术债量化、重构策略、架构防线

架构决策与演进

  1. 模块化单体:业务边界的单体与演进 ——单体进程内的模块边界、防腐层、数据隔离与微服务演进路径
  2. 架构决策记录(ADR) ——决策记录模板、生命周期、决策反转与团队落地
  3. 演进式架构与适应度函数 ——增量演进、适应度函数守门、重构节奏与 YAGNI 平衡
  4. API 设计与契约治理 ——REST 建模、版本化、OpenAPI 契约先行、错误契约与契约测试
  5. 混沌工程与弹性工程 ——故障注入、混沌实验设计、游戏日与弹性指标闭环
  6. 发布策略与灰度架构 ——蓝绿、金丝雀、滚动、功能开关与自动回滚

架构模式与发布工程

  1. 边车模式(Sidecar) ——边车原理与适用场景、Ambassador/Adapter/Sidecar 三种部署模式对比、边车与服务网格的关系、日志/代理/配置边车实战与踩坑清单
  2. 微服务间通信模式 ——同步 REST/gRPC 与异步消息选型权衡、请求响应与事件驱动、编排与编排舞蹈、服务契约管理与版本演进、超时重试幂等
  3. SAGA 分布式事务模式 ——Choreography 与 Orchestration 两种实现、补偿事务设计原则、消息持久化与重试保障、与 2PC 对比选型、失败恢复与隔离性约束
  4. 限界上下文策略 ——限界上下文识别与划分、上下文映射 Context Map、共享内核与防腐层 ACL、开放主机服务、团队边界与上下文边界对齐
  5. 绞杀者模式(Strangler Fig) ——遗留系统渐进改造思路、Facade 拦截与路由分流、按功能与按路由渐进替换、数据双写与迁移、旧系统切换与拆除路径
  6. 功能开关与发布工程 ——Release/Ops/Experiment 三类开关职责划分、灰度发布与 A/B 实验组合、开关生命周期与清理策略、失败默认值与可观测性、开关平台架构

现代架构实践

  1. 单元化架构 ——单元划分原则、流量路由与路由表、单元内自洽与跨单元调用、容灾切换与容量水位
  2. 架构适应度函数 ——适应度函数分类、ArchUnit/import-linter 等工具化落地、CI 门禁与阈值治理、演进约束与豁免机制
  3. 零信任架构落地实践 ——身份即边界、持续验证与动态授权、最小权限与微隔离、SDP 与 mTLS、落地路径与常见误区
  4. 平台工程与内部开发者平台 ——黄金路径与自助服务、平台即产品与团队拓扑、IDP 能力分层、平台度量与采纳率运营
  5. 多区域双活架构设计 ——多活拓扑与流量调度、数据复制与冲突解决、单元化与双活的关系、故障切换与数据一致性校验
  6. AI 原生架构设计 ——LLM 网关与模型路由、RAG 服务化分层、Agent 编排与工具调用、成本与延迟治理、评测与灰度
  7. 六边形架构与整洁架构 ——入站/出站端口与适配器定义、整洁架构同心圆与唯一依赖规则、包组织与组装层注入、内存适配器驱动的分层测试、与 DDD 分层及洋葱架构的关系和常见误区
  8. Serverless 架构设计 ——FaaS 与 BaaS 边界、冷启动成因与预置并发/SnapStart 优化、事件源与触发器模型、编排与协同两种组合方式、无状态约束下的状态管理与幂等设计、数据库连接收敛与按量计费陷阱
  9. C4 模型与架构文档化实践 ——Context/Container/Component/Code 四层抽象、Structurizr 与 PlantUML 图即代码、动态与部署视图扩展、与 ADR 的配合、活文档流程与常见误区
  10. 数据网格(Data Mesh) ——领域所有权/数据即产品/自助平台/联邦计算治理四大原则、数据产品与数据契约定义及版本演进、自助数据平台能力清单、策略即代码的联邦治理与分阶段落地路线
  11. 微前端架构 ——构建时与运行时集成方式取舍、Module Federation 与微应用方案对比、JS 沙箱与 CSS 隔离机制、路由归属与状态共享原则、独立部署与版本回滚及可用性兜底
  12. 韧性工程与错误预算 ——SLI/SLO/SLA 关系与错误预算计算、多窗口多燃烧率告警、发布门禁与预算冻结策略、混沌工程与游戏日演练流程、超时/重试/熔断/隔离舱与降级兜底设计

学习路径建议

本专题与「Kubernetes 云原生」「云原生可观测性」「DevOps 实践」专题紧密关联,建议配合阅读。

全部文章 game golang 客户端开发 Minigame Saas Indie rust Python Java cg
架构

数据网格(Data Mesh):领域数据产品与去中心化治理

数据网格(Data Mesh)的落地方法:中心化数据湖为何在规模化下失败、领域所有权/数据即产品/自助平台/联邦计算治理四大原则、数据产品与数据契约的定义及版本演进策略、自助数据平台的能力清单、策略即代码的联邦治理、分阶段落地路线,以及常见反模式与组织层面的挑战。

8 分钟阅读
架构设计 governance platform-engineering
架构

单元化架构:单元划分、流量路由与容灾切换

单元化架构的完整落地路径:从单元划分维度与分片键选择讲起,覆盖用户路由表与就近接入、单元内闭环与跨单元调用设计、故障时单元级切流与容灾演练,并讨论单元数量与容量规划,附路由缓存失效、分片键与查询键不一致、单元数冗余不足、数据校验与回切演练等完整踩坑清单与规避方案。

9 分钟阅读
架构设计 routing disaster-recovery