01
撮合引擎概述
什么是撮合引擎 · 在交易系统中的地位 · 核心功能与设计目标
入门全景
02
核心概念与术语
订单薄 · 买卖盘口 · Taker与Maker · 限价单与市价单 · 交易对
基础术语
03
订单生命周期
订单状态机(新建·部分成交·完全成交·撤销)· 状态流转图
状态机核心
04
数据结构设计
红黑树 · 跳表 · 优先队列 · 价格队列与时间优先队列
数据结构性能
05
撮合算法核心逻辑
价格优先·时间优先原则 · 逐笔撮合与批量撮合
算法核心
06
限价单撮合逻辑
买入限价单与卖出限价单匹配流程 · 部分成交处理
限价单逻辑
07
市价单撮合逻辑
市价单吃单逻辑 · 滑点控制与保护机制
市价单风控
08
FOK与IOC订单
立即成交否则撤销 (FOK) · 立即成交否则取消 (IOC) 实现
订单类型高级
09
冰山订单
大额订单隐藏逻辑 · 冰山订单切片与重组
冰山大额
10
撤单逻辑
撤单流程 · 锁竞争与并发安全 · 撤单后价格队列维护
撤单并发
11
并发控制基础
锁机制(互斥锁·读写锁)· 无锁编程(CAS·原子操作)适用场景
并发锁
12
内存模型与可见性
Java/C++内存模型 · volatile · 内存屏障
内存可见性
13
无锁队列实现
RingBuffer · Disruptor模式在撮合引擎中的应用
无锁高性能
14
事件驱动架构
事件源 · 事件总线 · 异步处理与回调
架构事件
15
撮合引擎微服务化
服务拆分 · RPC通信 · 状态同步
微服务分布式
16
性能指标与基准测试
TPS · 延迟(P50/P99) · 吞吐量 · JMH/wrk
性能测试
17
内存优化
对象池 · 逃逸分析 · 缓存行填充 (Cache Line Padding)
内存优化
18
GC优化
减少GC压力 · 堆外内存 · ZGC与Shenandoah选择
GCJVM
19
持久化与恢复
交易日志(WAL) · 快照机制 · 崩溃恢复流程
持久化容灾
20
数据一致性
最终一致性 · 强一致性 · 分布式事务(2PC/3PC/TCC)取舍
一致性分布式
21
高可用设计
主从切换 · 多副本 · 故障转移策略
高可用HA
22
容错与降级
熔断器 · 限流(令牌桶/漏桶) · 优雅降级
容错稳定性
23
监控与告警
核心指标(订单积压·延迟·错误率) · Prometheus+Grafana
监控可观测
24
测试策略
单元测试 · 集成测试 · 混沌工程 · 压力测试
测试质量
25
撮合引擎部署
容器化(Docker/K8s) · CI/CD流水线 · 灰度发布
部署DevOps
26
安全与风控
防刷单 · 防操纵 · 资金安全校验 · 风控规则引擎
安全风控
27
实战案例:需求与架构
设计一个简单数字货币撮合引擎 · 需求分析 · 架构选型
实战架构
28
实战案例:核心模块编码
订单薄 · 撮合器 · 事件处理器实现
编码实现
29
实战案例:性能调优与压测
从1000TPS到10万TPS的优化历程
调优压测
30
未来趋势
跨链撮合 · NFT撮合 · AI辅助定价
前沿趋势