posts

《Java 消息中间件·事件驱动架构》 · 全书目录与章节索引

《Java 消息中间件》卷三:把业务需求翻译成事件契约、读模型、一致性方案与治理规则。覆盖事件与命令的分界、CQRS 与投影、Saga 与补偿、Kafka Streams 的流表模型、可观测与迁移路径,最后用 libraryd 全链路与场景对照收束。本页为章节索引,逐篇链接随正文落盘补全。

全书概览

项目内容
书稿《Java 消息中间件·事件驱动架构》
篇数50 篇(15 章 45 节 + 序、前言、目录 + 附录 A/B)
领域事件建模、CQRS、一致性与补偿、Kafka Streams、可观测与治理、架构验收
贯穿项目libraryd-mq —— 借阅、归还、预约、库存调整四类事件的完整链路
主线版本JDK 25 LTS(Temurin 25.0.5+8)、Kafka 4.3.0(KRaft only)、kafka-streams 4.3.0
上级专题书稿专题

三卷分工

卷书名关注点
卷一《Java 消息中间件·Kafka 内核与客户端》一条消息从 send 到落盘发生了什么
卷二《Java 消息中间件·可靠消息与消费治理》怎么做到不丢、不重、可恢复、可治理
卷三本卷怎么用事件设计系统

本卷只讲架构:机制归卷一,可靠性配置归卷二。凡是要展开 acks、ISR、位移细节的地方,一句话引用卷一,不重写。

五部分与十五章

部分章节回答的问题
第一部分 范式第 1–3 章什么时候该用事件?事件怎么建模?CQRS 的边界在哪?
第二部分 一致性与演进第 4–6 章跨服务怎么一致?顺序与并发怎么处理?契约怎么演进?
第三部分 流处理第 7–9 章Streams 的拓扑、流表模型、作业怎么运维?
第四部分 可观测性与治理第 10–12 章事件流怎么监控?平台怎么治理?怎么从现状迁移?
第五部分 案例与验收第 13–15 章完整链路长什么样?不同场景怎么选?上线判据是什么?

章节主题

章主题
1三种交互:事件、命令与查询
2事件建模:识别、边界与目录
3CQRS:读模型、投影与重建
4一致性:分布式事务、本地消息表与补偿
5顺序与并发
6契约演进
7Streams 基础
8流表模型
9流作业运维
10可观测
11平台治理
12方法与迁移
13libraryd 全链路
14场景对照
15上线与验收

阅读方式

三条路径:

与卷二的关系

卷二结束在「一条链路能不能上线」。卷三从这里接手,回答「几十条链路、几百个消费者、跨多个集群时,事件流本身怎么治理」。

卷二留下的四个缺口会在这里展开:跨集群语义、业务幂等的容量模型、契约治理的组织方式、长尾故障的观测。卷二验收单里的判据,在卷三会变成架构设计的前置条件。

写作状态

本卷正文正在写作中。逐篇目录与章节内链接会在正文落盘后补全,本页的章节结构以最终成书为准。

全部文章 game Indie Java golang Books 客户端开发 Minigame Saas rust Python
books

《Java 消息中间件·事件驱动架构》1.2 事件驱动 vs 请求驱动

事件驱动不是默认答案。先用四个信号判断什么时候该用事件,再用一张决策树把请求驱动、命令、查询、事件分开;接着用 libraryd 的两个反例说明用错位置的代价:借书前异步查库存导致超卖,借完立刻查列表却读不到。文末附串行调用与扇出的对照实验,并说明延迟收益为何不是主要理由。

10 分钟阅读
书稿 Java Kafka