01
订单簿系统概述
什么是订单簿 · 核心作用 · 限价单/市价单 · 买盘/卖盘队列
基础概念
02
核心数据结构设计
价格队列 · 订单条目 · 红黑树/跳表/哈希表选型
数据结构设计
03
内存存储引擎实现
TreeMap · ConcurrentSkipListMap · 增删改查操作
Java并发
04
订单簿核心操作
插入/撤销/修改逻辑 · 改价改量 · 撮合触发条件
核心逻辑
05
撮合算法实现
价格优先·时间优先 · 限价/市价撮合 · 部分/完全成交
算法撮合
06
深度图与行情快照
盘口深度聚合 · Top of Book · 增量/全量更新
行情快照
07
持久化存储设计
为什么持久化 · SSD vs HDD · 写/读放大 · RocksDB/LevelDB
存储选型
08
RocksDB集成
SST/MemTable/WAL · Java API · 序列化与反序列化
RocksDB集成
09
数据序列化方案
Java原生 · Protobuf · FlatBuffers · Kryo · 性能对比
序列化性能
10
订单簿快照持久化
全量快照 · 压缩存储 · 恢复流程 · 一致性保证
快照持久化
11
操作日志(WAL)
WAL原理 · 预写日志 · 回放恢复 · 清理策略
WAL日志
12
内存与磁盘数据一致性
双写一致性 · 异步/同步刷盘 · 崩溃恢复 · 脏数据处理
一致性崩溃
13
并发控制策略
读写锁 · 无锁CAS · 分段锁 · 并发性能测试
并发锁
14
高性能网络层设计
Netty · 自定义TCP协议 · 编解码 · 粘包拆包
网络Netty
15
客户端API设计
RESTful · WebSocket · SDK封装 · API版本管理
APIWebSocket
16
订单簿事件驱动架构
事件类型 · 事件总线 · 异步处理 · 回调机制
事件架构
17
性能优化实战
JVM调优 · 零拷贝 · 内存池化 · CPU缓存友好
优化JVM
18
测试策略
单元测试 · 集成测试 · JMH压力测试 · 混沌工程
测试JMH
19
监控与可观测性
Prometheus · ELK · Jaeger · 告警规则
监控可观测
20
容错与高可用
主从复制 · Raft选举 · 故障转移 · 备份恢复
高可用Raft
21
扩展性设计
分片策略 · 读写分离 · 水平扩展 · 负载均衡
扩展分片
22
订单簿回测系统
历史回放 · 撮合回测 · 性能基准 · 策略评估
回测策略
23
多资产支持
不同资产差异 · 数字货币vs股票 · 跨市场管理
多资产对比
24
风控与安全
频率限制 · 价格保护 · 资金校验 · 异常检测
风控安全
25
实战案例:数字货币订单簿
构建订单簿 · 对接行情API · 实时展示
实战数字货币
26
性能基准测试
数据结构对比 · 读写比例 · 延迟分布 · 吞吐量
基准性能
27
生产环境部署
Docker · Kubernetes · 配置管理 · 灰度发布
部署K8s
28
运维与排障
OOM/CPU飙升/磁盘IO · 性能瓶颈 · 日志分析
运维排障
29
未来演进
Apache Arrow · FPGA加速 · AI撮合 · 下一代架构
前沿演进
30
课程总结与项目实战
完整系统搭建 · 代码审查 · 知识图谱 · 进阶路径
总结实战