🛰️ RPC 原理
RPC 定义与原理;TCP/UDP 通信;Socket 编程;Stub 代理;序列化与反序列化。
第1阶段 RPC原理 → 通信、序列化第2阶段 Dubbo架构 → SPI、服务治理第3阶段 序列化 → Hessian、Protobuf第4阶段 负载均衡 → 一致性Hash RPC │ ┌───────────┬─────────────┴─────────────┐ ▼ ▼ ▼ ▼ RPC原理 Dubbo 序列化 负载均衡 │ │ │ │• TCP/UDP • SPI • Hessian • 随机• Socket • 注册发现 • Protobuf • 轮询• Stub • 服务治理 • Kryo • 一致性Hash• 序列化 • 集群容错 • Java序列化 • 最少活跃| 专题 | 考察频率 | 难度 | 核心能力 |
|---|---|---|---|
| RPC原理 | ★★★★☆ | 高 | 通信机制 |
| Dubbo | ★★★★★ | 中 | SPI机制 |
| 序列化 | ★★★★☆ | 中 | 性能选型 |
| 负载均衡 | ★★★★☆ | 中 | 算法 |
🛰️ RPC 原理
RPC 定义与原理;TCP/UDP 通信;Socket 编程;Stub 代理;序列化与反序列化。
🚀 Dubbo 架构
整体架构与核心组件;服务注册与发现;SPI 机制;服务治理;与 Spring Cloud 对比。
📦 序列化协议
Java 序列化;Hessian;Protobuf;Kryo;序列化选型与性能对比。
⚖️ 负载均衡
随机/轮询/加权;一致性 Hash;最少活跃调用;负载均衡算法对比与实践。
🔧 服务治理
集群容错;超时重试;限流降级;服务路由;配置管理。
单体架构 微服务架构──────── ────────────方法调用 = 直接调用 方法调用 = 网络请求无网络延迟 网络延迟 1~10ms无序列化开销 序列化/反序列化无超时/重试 需要容错机制Client Server │ │ │ 1. 序列化请求参数 │ │───────────────────────────>│ │ │ 2. 反序列化,定位服务 │ │ 3. 执行本地方法 │ │ 4. 序列化返回值 │<───────────────────────────│ │ 5. 反序列化,返回结果 │ │
核心组件:┌──────────────────────────────────────┐│ Stub(存根):代理对象,封装调用细节 ││ Serialization(序列化):对象→字节 ││ Transport(传输):TCP/HTTP 网络 ││ Registry(注册中心):服务发现 │└──────────────────────────────────────┘第1天 RPC 原理 → 理解调用流程,动手写简单 RPC第2天 Dubbo 架构 → 掌握核心组件,理解 SPI 机制第3天 序列化协议 → 对比各协议优缺点,理解选型第4天 负载均衡与集群容错 → 理解各算法原理和适用场景第5天 服务治理 → 限流/降级/路由实战