撮合引擎的架构实现:
API Gateway
│
▼
Order Service
│
▼
Message Queue
│
▼
Matching Engine
│
┌───────┴────────┐
▼ ▼
Trade Service Market Data
│ │
▼ ▼
Database WebSocket
撮合引擎的作用:根据价格优先、时间优先规则,把买单和卖单匹配成交。
撮合引擎是交易所核心组件,主要负责根据价格优先和时间优先规则匹配买卖订单。
通常使用内存订单簿结构,例如TreeMap<BigDecimal, Queue<Order>> 来维护买卖盘。
撮合过程会不断比较最优买价和最优卖价,如果满足成交条件就生成成交记录并更新订单簿。
在架构上,撮合引擎一般采用单线程模型避免锁竞争,订单通过消息队列顺序进入撮合引擎,撮合结果再异步持久化并推送行情,从而实现高并发和低延迟