设计前要先确认:线性合约还是反向合约,单向持仓还是双向持仓,逐仓还是全仓,支持哪些订单类型,目标 TPS 和延迟是多少,以及可用性和恢复目标。
核心模块包括 API / Authentication、Order Management、Pre-trade Risk、Sequencer、Matching Engine、Market Data、Clearing & Ledger、Position Service、Funding Service、Mark / Index Price、Liquidation Engine、Insurance Fund / ADL、Reconciliation & Audit。
一致性上,单订单簿由 Sequencer 建立全序,单账户资金和仓位事件保持顺序。跨服务通过事件驱动解耦,但消费者必须幂等。撮合和账户状态都需要周期性快照与追加日志,故障后从快照加载并按序重放。主备切换要防止双主和重复出单。