1 分钟阅读
Java 精通 03:架构演进、模块化单体与领域建模(专家级的边界与治理)
微服务不是默认答案:模块化单体、限界上下文、聚合与领域事件、API 版本化与契约测试;多团队协作下的架构治理与演进策略。
- Java
- 架构
- DDD
- 微服务
AI 共读让 Noob 帮你提炼要点 / 答疑
本篇目标:能解释限界上下文;能划定聚合一致性边界;能写一页 ADR;能批判「为微服务而微服务」。
1. 知识点:模块化单体#
在单部署单元内用 Maven/Gradle 模块 + 包边界 + ArchUnit 约束依赖,降低分布式复杂度。
2. 知识点:限界上下文(例:电商)#
| 上下文 | 核心概念 | 对外接口 |
|---|---|---|
| 目录 | SKU、类目 | 查询 API |
| 库存 | 预留、扣减 | 预留命令 |
| 订单 | 订单、支付状态 | 下单用例 |
上下文之间 防腐层 翻译 DTO,禁止领域模型泄漏。
3. 知识点:聚合#
一致性边界:一个事务修改一个聚合根;跨聚合用最终一致(事件/消息)。
反模式:巨型聚合导致长事务、热点锁。
4. 知识点:API 演进#
- 兼容字段只增不减(或通过版本隔离)
- 破坏性变更:双写、灰度、回放测试
- 契约测试:消费者驱动契约(Pact)或提供者验证
5. 知识点:ADR 模板#
# ADR-12:订单拆分库存上下文
## 状态
Accepted
## 上下文
单体耦合导致发布停摆...
## 决策
引入库存服务,订单通过同步 API 预留...
## 后果
+ 独立扩缩容
- RT 依赖增加,需要超时与舱壁6. Lab#
为你当前系统画上下文映射(upstream/downstream);写 ADR 记录「为何不拆支付」。
7. 自测清单#
- 聚合 vs 实体 vs 值对象职责?
- 防腐层解决什么?
- 两个「伪微服务」信号?
- ADR 与 RFC 差异心智?
系列闭环:回到 java-00-roadmap 做分层复盘,把 Lab 产物沉淀为团队 wiki。
相关阅读
基于内容相似度 + 标签/系列加权
- 1 分钟Java 从基础到精通(初级 · 高级 · 专家路线)
Java 精通 01:分布式一致性、事务模式与幂等——从理论到可交付方案
面向资深/专家:CAP 的实践读法、BASE、2PC/Saga/TCC 的取舍、Outbox 与消息语义;Java 业务里如何实现幂等与补偿的可观测闭环。
- Java
- 分布式
- 一致性
- 1 分钟Java 从基础到精通(初级 · 高级 · 专家路线)
Java 进阶 03:Spring 生态与典型服务端架构(IoC、AOP、事务与集成)
Spring Boot 心智:依赖注入与 Bean 生命周期、AOP 的典型用途、声明式事务传播与失效场景;与 Web、持久化、缓存、消息的常见集成边界。
- Java
- Spring
- 架构
- 1 分钟Java 从基础到精通(初级 · 高级 · 专家路线)
Java 精通 02:性能剖析、容量规划与可观测性(指标 · 日志 · 链路)
专家必备:从基准测试误区到火焰图/JFR、线程与分配剖析;RED/USE 类指标、结构化日志、分布式追踪与 SLO;压测如何服务于容量决策。
- Java
- 性能
- 可观测性
- 1 分钟Java 从基础到精通(初级 · 高级 · 专家路线)
Java 进阶 02:JVM 运行时、GC 与调参入门(从现象到证据)
堆/栈/元空间、对象分配与 TLAB、常见 GC 算法对比、GC 日志与 jcmd/jstack 入门;Stop-The-World 与延迟取舍,避免迷信参数大全。
- Java
- JVM
- GC