第 4 章 · 分布式、云原生与新技术架构

📖 系统架构设计师 · 考点精讲(原创整理)约 1361 字🎯 配套练习:架构·分布式与新技术

考点梳理

4.1 中间件与集成架构

中间件类型作用
消息中间件异步解耦、削峰填谷、可靠投递(Kafka/RabbitMQ 等)
事务中间件分布式事务协调(两阶段提交等思路)
对象请求代理(ORB)跨语言对象调用
应用服务器承载业务组件与容器管理

SOA vs 微服务:SOA 强调服务复用与企业级总线(ESB);微服务强调单一职责、独立部署、去中心化治理,粒度更细、技术栈可异构。

4.2 微服务与云原生关键机制

  • 服务注册与发现(注册中心)、API 网关(路由、鉴权、限流)、配置中心
  • 熔断、降级、限流、隔离(防止故障扩散);
  • 容器与编排(Docker/Kubernetes)、DevOps 与 CI/CD可观测性(日志/指标/链路追踪);
  • Serverless:按需运行、按量计费,适合事件驱动与弹性场景。

4.3 数据架构

手段目的
缓存(本地/分布式)降低数据库压力、提升读性能(注意缓存一致性)
读写分离主库写、从库读,提升读吞吐
分库分表突破单库容量与性能瓶颈(水平/垂直拆分)
数据仓库/湖仓面向分析的集成存储(与 OLTP 分离)

CAP 定理:一致性(C)、可用性(A)、分区容错性(P)三者不可同时完全满足;分布式系统通常必须容忍分区(P),在 C 与 A 之间取舍;BASE(基本可用、软状态、最终一致)是弱一致性实践思路。

4.4 高可用与容灾

  • 架构层次:单机冗余(RAID/双电源)→ 集群(主备、双活)→ 同城双活 / 异地多活
  • 指标:RTO(恢复时间目标)RPO(恢复点目标)——RTO 关注"多久恢复",RPO 关注"丢多少数据";
  • 备份策略:全量/增量/差异(与信息安全章一致)。

4.5 安全架构要点

  • 认证与授权(OAuth2/OIDC 思路)、最小权限、传输与存储加密、密钥管理;
  • 边界防护(WAF/防火墙)、零信任思路(默认不信任、持续验证);
  • 合规:等级保护(等保 2.0)要求与数据安全合规。

🧠 记忆工具箱

口诀速记

  • 微服务五件套:注册发现、网关、配置中心、熔断限流、链路追踪
  • CAP:分布式必容忍 P,在 C 与 A 之间选;BASE=基本可用 + 软状态 + 最终一致
  • 容灾两指标:RTO 看时间、RPO 看数据
  • 缓存三问:要不要缓存、缓存什么、何时失效(一致性)

例题(带解析)

例题 1:某电商系统在双十一期间通过消息队列把下单请求异步化,避免数据库被瞬时流量击垮。这主要体现了消息中间件的哪种作用? A. 数据持久化 B. 异步解耦与削峰填谷 C. 提升一致性 D. 替代数据库事务 答案 B。解析:消息中间件通过异步解耦、缓冲流量实现削峰填谷;它不替代事务,且引入最终一致性问题。

例题 2:关于 CAP 与 BASE,下列说法正确的是? A. 分布式系统可以同时满足 CAP 三者 B. 分布式系统通常必须容忍分区,在一致性与可用性之间取舍;BASE 是弱一致性实践 C. BASE 强调强一致性 D. CAP 与 BASE 是同一概念 答案 B。解析:CAP 指出三者不可同时完全满足,分区容错在分布式系统中通常必须保证,需在 C/A 间权衡;BASE 通过基本可用、软状态与最终一致性实现灵活性。

⚠️ 易错提醒

  • 微服务 ≠ SOA:SOA 更强调复用与总线,微服务更强调自治与独立部署;
  • 缓存一致性是常见隐患:更新数据库与失效缓存需有策略(如先更新库再删缓存);
  • RTO 与 RPO 别记反:RTO=多久恢复(时间),RPO=丢多少数据(数据);
  • CAP 中"必须容忍 P"是因为网络分区无法避免,不是因为 P 比 C、A 更重要。