Java 技术底层全景学习地图

面向"跨专业到计算机的研究生":从底层机制到上层框架,一份可睡觉前放下、醒来就能啃的体系化材料

先说一句话(也是这套材料的灵魂):
框架产品层出不穷,但底层的路线方法其实没几条。先吃透"并发 / I/O / 存储结构 / 事件驱动 / 共识 / 分治 / 代理+补偿"这七条底层路线,再去看任何一个 Java 框架,你都会发现——它不过是这些机制的实例化与取舍。本套材料按"底层优先、对比导向"组织,每一篇都在顶部写明它的底层路线。
七条底层路线(万变不离其宗):
  1. 并发模型(线程/协程/事件循环)→ 解决"如何同时处理很多事"
  2. I/O 多路复用 + 零拷贝(epoll / sendfile / mmap)→ 解决"怎么高效搬数据"
  3. 数据结构与存储(B+树 / LSM / 跳表 / 哈希)→ 解决"怎么存、怎么找"
  4. 事件驱动 / 责任链(Reactor / Pipeline / Filter)→ 解决"怎么组织处理流程"
  5. 共识 + 租约 + watch(Raft / ZAB / lease)→ 解决"分布式如何达成一致"
  6. 分治 + 并行 + 背压(分片 / shuffle / 流水线)→ 解决"大数据怎么算"
  7. 代理 + 序列化 + 补偿 + 幂等 → 解决"跨进程调用与一致性"

一、底层路线一张图

中心是"底层路线",七个分支分别对应七篇材料。每个节点可点击跳转。

底层路线 万变不离其宗 底层基石 并发 / IO / 零拷贝 / TCP 数据库原理 B+树 / 缓冲池 / MVCC 网络框架与 Netty Reactor / 责任链 / 零拷贝 协调原语 注册中心 / ID / 分布式锁 消息队列与批处理 顺序写 / 推拉 / 分治 RPC 与缓存 代理 / 序列化 / Redis 分布式事务 2PC / TCC / Saga / Seata
图:底层路线 → 七篇材料(点击跳转对应 HTML)

二、材料导航(共 8 篇)

Part 01 · 底层基石:操作系统与计算机基础 进程/线程/协程 · CPU 缓存与伪共享 · CAS 与锁 · I/O 模型(BIO/NIO/epoll/io_uring) · 零拷贝 · TCP 核心。一切框架的底座。 底层路线 ①② Part 02 · 数据库原理:存储引擎、索引、事务与锁 InnoDB 架构 · 缓冲池 · WAL/redo/undo · B+树索引 · MVCC · 隔离级别 · 间隙锁 · 查询优化 · 主从复制。 底层路线 ③ Part 03 · 网络框架与 Netty:从 Reactor 到零拷贝 Reactor 三种形态 · 原生 NIO 的坑 · EventLoop 无锁串行 · Pipeline 责任链 · ByteBuf 内存池与零拷贝 · 粘包拆包。 底层路线 ②④ Part 04 · 分布式协调原语:注册中心、ID生成、分布式锁 CAP/BASE · Raft/ZAB · ZK/Etcd/Nacos/Eureka 对比 · Snowflake/号段/Leaf · Redis/ZK/Etcd/DB 分布式锁 · fencing token。 底层路线 ⑤ Part 05 · 消息队列与批处理:吞吐与分治的底层 Kafka/RocketMQ/RabbitMQ/Pulsar 底层对比 · 顺序写 + page cache + 零拷贝 · ISR · 推拉模型 · MapReduce/Spring Batch/流批一体。 底层路线 ⑥ Part 06 · RPC 与缓存:远程调用与加速的底层 RPC 四要素 · Dubbo/gRPC/Thrift 对比 · 本地缓存 Caffeine(W-TinyLFU)/Guava/Ehcache · 远程缓存 Redis/Memcached 底层。 底层路线 ⑦ Part 07 · 分布式事务与一致性落地 2PC/3PC · XA · TCC(空回滚/防悬挂) · Saga · 本地消息表/事务消息 · 幂等 · Seata(AT/TCC/Saga/XA)。 底层路线 ⑤⑦ Part 08 · 成为技术专家:还需掌握的能力与思维(进阶) 在"底层+框架"之上,补齐知识深化、核心能力(源码/性能/设计/表达)、思维模式(第一性原理/权衡/系统/长期),并结合你的画像给出个性化路线。 能力层 × 思维层

三、底层路线 → 框架 总映射表

这张表是"用底层视角重新分类框架"的关键。你会发现,很多看似无关的产品,底层是同一套机制。

底层路线解决的问题典型机制/算法对应的框架 / 组件(实例化)
① 并发模型如何同时处理大量任务线程池、协程(M:N)、事件循环、无锁串行Netty EventLoop、Redis 单线程、虚拟线程(Loom)、Disruptor、Akka actor
② I/O 多路复用 + 零拷贝高效搬运字节epoll/kqueue、Reactor、sendfile/mmap/spliceNetty、Kafka(sendfile)、Nginx、Tomcat NIO、RocketMQ(mmap)
③ 数据结构与存储怎么存、怎么找B+树、LSM、跳表、哈希、WAL、缓冲池MySQL/InnoDB、Redis(跳表/哈希/SDS)、RocksDB、Elasticsearch(倒排+FI)
④ 事件驱动 / 责任链组织处理流程Reactor、Pipeline、Filter 链、InterceptorNetty Pipeline、Servlet Filter、Dubbo Filter、Spring Interceptor
⑤ 共识 + 租约 + watch分布式达成一致Raft/ZAB、lease、quorum、watch 回调ZooKeeper、Etcd、Nacos、Consul、Redis 锁、各种 ID 生成器
⑥ 分治 + 并行 + 背压大数据量计算分片、shuffle、流水线、checkpoint、背压MapReduce、Spark、Flink、Spring Batch、Kafka 分区并行消费
⑦ 代理 + 序列化 + 补偿 + 幂等跨进程调用与一致性动态代理、Protobuf/Hessian、2PC、TCC、Saga、幂等Dubbo、gRPC、Thrift、Seata、RocketMQ 事务消息、本地消息表
说明: 上表覆盖"知识底座"(前 7 篇)。要成为专家,还需叠加"能力层 + 思维层"——即 Part 08 · 成为技术专家的能力与思维。框架会过时,底层原理、工程能力与思维方式才是长期壁垒。

四、建议学习路径

按"由底座到上层、由单机到分布"的顺序,符合认知坡度:

1Part 01 底层基石——把并发、I/O、零拷贝、TCP 吃透。这是后面所有内容的"普通话",建议反复读到能默写 epoll 与零拷贝。

2Part 02 数据库原理——存储引擎 + 索引 + 事务,是"数据结构与存储"路线的标杆案例。

3Part 03 网络与 Netty——把 Part 01 的 I/O 模型落到 Netty,理解"事件驱动 + 零拷贝"如何造出高性能框架。

4Part 06 RPC 与缓存——RPC 是"代理+序列化+网络",缓存是"空间换时间",这两类最贴近日常编码。

5Part 04 协调原语——进入分布式,理解"共识+租约"如何支撑注册中心、ID、锁。

6Part 05 消息队列与批处理——"顺序写 + 分治"路线,Kafka/RocketMQ 是架构范本。

7Part 07 分布式事务——收口全局,把补偿、幂等、共识串起来;读到这里你会感叹"果然还是那几条路线"。

8Part 08 专家能力与思维(进阶)——技术只是底座,真正拉开差距的是工程能力(源码/性能/设计/表达)与思维模式(第一性原理/权衡/系统/长期)。结合你的画像(数理强、表达弱、完美主义)给出个性化打法。

阅读建议:每篇都先读顶部"底层路线"块,再读图示,最后读框架对比。遇到不懂的底层词汇,回到 Part 01/02 补。HTML 版含交互友好的目录与内联 SVG 图示;MD 版适合离线/检索。两份内容同步。

五、文件清单

文件形式内容
index.html本页(总览+地图)底层路线一张图、七篇导航、总映射表、学习路径
part-01-foundation.html / .md底层基石并发/IO/零拷贝/TCP
part-02-database.html / .md数据库原理存储引擎/索引/事务/锁
part-03-netty.html / .md网络与 NettyReactor/责任链/零拷贝
part-04-coordination.html / .md协调原语注册中心/ID/分布式锁
part-05-mq-batch.html / .md消息队列与批处理Kafka/RocketMQ/Pulsar/MapReduce
part-06-rpc-and-cache.html / .mdRPC 与缓存Dubbo/gRPC/Thrift/Redis/Caffeine
part-07-distributed-tx.html / .md分布式事务2PC/TCC/Saga/Seata
part-08-expert-growth.html / .md专家能力与思维(进阶)知识深化 / 能力层 / 思维层 / 个性化路线
本套材料为"从底层到框架"体系化学习笔记,由多 agent 协作整理。建议配合官方文档与源码阅读使用。
配套 Markdown 版本见各同名 .md 文件;图示以 HTML 版为准。