Skip to content

系统架构设计

**本文引用的文件** - [承兑平台产品方案文档.md](file://承兑平台产品方案文档.md) - [决策变更清单.md](file://决策变更清单.md) - [文档/Readme.md](file://文档/Readme.md) - [任务和测试过程/Readme.md](file://任务和测试过程/Readme.md) - [AI沟通记录/2026-06-06_沟通记录.md](file://AI沟通记录/2026-06-06_沟通记录.md) - [Axure老的项目原型/老的项目原型/【PC】交易员/项目思考.html](file://Axure老的项目原型/老的项目原型/【PC】交易员/项目思考.html)

目录

  1. 简介
  2. 项目结构
  3. 核心组件
  4. 架构总览
  5. 详细组件分析
  6. 依赖分析
  7. 性能考虑
  8. 故障排查指南
  9. 结论
  10. 附录

简介

本文件面向“承兑平台”系统,围绕法币-USDT的流动性撮合与做市业务,给出系统架构设计文档。文档聚焦整体架构概览、技术栈选择、系统组件划分、数据流设计,解释架构模式(文档驱动架构、原型驱动开发)、核心设计原则、系统边界与集成点,并提供架构决策的技术考量、权衡分析与约束条件。同时,给出系统上下文图、组件分解图、部署拓扑图,说明基础设施要求、可扩展性与性能要求,并覆盖安全性、监控与灾难恢复等跨领域关注点。

项目结构

项目仓库以文档与原型为主,系统架构与业务方案集中在产品方案文档与决策变更清单中;配套的Axure原型用于前端交互与业务流程可视化;沟通记录与任务清单用于过程管理与版本演进追踪。

mermaid
graph TB
A["产品方案文档<br/>总体设计与流程"] --> B["决策变更清单<br/>确认与修订"]
A --> C["功能模块设计<br/>业务中台与中心"]
A --> D["数据流与资金流模型<br/>入金/出金"]
A --> E["资金托管方案<br/>分层混合托管"]
F["Axure原型<br/>交易员/商户/PC端"] --> C
G["沟通记录<br/>过程与协作"] --> A
H["任务与测试过程<br/>任务清单"] --> A
I["文档目录说明<br/>存放位置"] --> A

图表来源

  • [承兑平台产品方案文档.md:1-800](file://承兑平台产品方案文档.md#L1-L800)
  • [决策变更清单.md:1-235](file://决策变更清单.md#L1-L235)
  • [Axure老的项目原型/老的项目原型/【PC】交易员/项目思考.html:58-713](file://Axure老的项目原型/老的项目原型/【PC】交易员/项目思考.html#L58-L713)
  • [文档/Readme.md:1-3](file://文档/Readme.md#L1-L3)
  • [任务和测试过程/Readme.md:1-3](file://任务和测试过程/Readme.md#L1-L3)
  • [AI沟通记录/2026-06-06_沟通记录.md:1-52](file://AI沟通记录/2026-06-06_沟通记录.md#L1-L52)

章节来源

  • [承兑平台产品方案文档.md:1-800](file://承兑平台产品方案文档.md#L1-L800)
  • [决策变更清单.md:1-235](file://决策变更清单.md#L1-L235)
  • [文档/Readme.md:1-3](file://文档/Readme.md#L1-L3)
  • [任务和测试过程/Readme.md:1-3](file://任务和测试过程/Readme.md#L1-L3)
  • [AI沟通记录/2026-06-06_沟通记录.md:1-52](file://AI沟通记录/2026-06-06_沟通记录.md#L1-L52)

核心组件

  • 业务中台
    • 订单中心:入金/出金订单全生命周期管理、批量处理、指派与调度
    • 费率引擎:基准报价、交易员偏移、商户加点、手续费与分级策略
    • 营销中心:介绍人返佣、交易员补助与夜间补助
    • 钱包中心:充值地址管理、链上交互、内部划转、冷热钱包与提现审核
    • 通知中心:站内信、短信/邮件、Webhook
    • 数据报表中心:实时交易数据、财务统计、交易员绩效、商户分析
  • 运营后台(Admin)
    • 用户管理、风控监控、参数配置、数据统计与运营调度
  • 交易员端(App/H5)
    • 接单确认、转账确认、余额查询、收益展示
  • 商户端(API/后台)
    • API下单、汇率查询、资金明细、交易历史、后台管理

章节来源

  • [承兑平台产品方案文档.md:295-495](file://承兑平台产品方案文档.md#L295-L495)
  • [决策变更清单.md:107-140](file://决策变更清单.md#L107-L140)

架构总览

系统采用“文档驱动架构 + 原型驱动开发”的方法论:

  • 文档驱动:以产品方案文档与决策变更清单为权威依据,确保设计一致性与可追溯性
  • 原型驱动:以Axure原型验证业务流程与交互,指导前端实现与后端接口设计
mermaid
graph TB
subgraph "系统边界"
U["终端用户"] --> M["商户外汇平台"]
M --> P["承兑平台"]
P --> T["交易员"]
P --> R["运营后台"]
P --> S["通知中心"]
P --> W["钱包中心"]
P --> F["风控中心"]
P --> B["营销中心"]
P --> O["订单中心"]
P --> PR["费率引擎"]
P --> D["数据报表中心"]
end
subgraph "外部系统"
EX["区块链网络TRC20/ERC20/BEP20"]
KYC["合规/反洗钱服务"]
end
W --> EX
P --> KYC

图表来源

  • [承兑平台产品方案文档.md:295-495](file://承兑平台产品方案文档.md#L295-L495)
  • [决策变更清单.md:142-165](file://决策变更清单.md#L142-L165)

详细组件分析

订单中心

  • 职责:入金/出金订单的创建、指派、锁定、确认、完成、取消与异常处理
  • 关键流程:入金(锁定交易员USDT→线下转账→确认收款→内部划转);出金(商户USDT锁定→平台指派→交易员转账→凭证审核→释放USDT)
  • 状态机:待指派→已指派→待转账→待确认→已完成/已取消
  • 批量处理:支持Excel模板导入的批量出金
mermaid
sequenceDiagram
participant U as "终端用户"
participant M as "商户"
participant P as "平台"
participant T as "交易员"
participant W as "钱包中心"
participant N as "通知中心"
U->>M : 发起入金/出金请求
M->>P : API下单购买/出售USDT
P->>P : 订单中心创建订单
P->>P : 指派引擎匹配交易员
P->>W : 锁定交易员USDT入金/商户USDT锁定出金
P->>N : 推送订单状态通知
U->>P : 入金场景用户确认转账
T->>P : 出金场景上传转账凭证
P->>F : 风控审核凭证
F-->>P : 审核结果
P->>W : 内部划转/释放USDT
P-->>M : Webhook回调

图表来源

  • [承兑平台产品方案文档.md:156-295](file://承兑平台产品方案文档.md#L156-L295)

章节来源

  • [承兑平台产品方案文档.md:335-345](file://承兑平台产品方案文档.md#L335-L345)

费率引擎

  • 两套报价体系:对外报价(商户/终端用户可见)与交易员结算价(交易员实际结算)
  • 三层配置:平台基准报价→交易员偏移→商户加点
  • 自动计算:根据基准bid/ask、偏移与加点,计算对外bid/ask、交易员bid/ask、最终汇率
  • 利润模型:平台通过USDT划转数量差获益,交易员通过买卖价差获益
mermaid
flowchart TD
Start(["开始"]) --> LoadBase["加载平台基准bid/ask"]
LoadBase --> ApplyOffset["应用交易员偏移<br/>得到交易员bid/ask"]
ApplyOffset --> ApplyMarkup["应用商户加点<br/>得到最终汇率"]
ApplyMarkup --> CalcProfit["计算平台与交易员利润"]
CalcProfit --> End(["结束"])

图表来源

  • [承兑平台产品方案文档.md:346-461](file://承兑平台产品方案文档.md#L346-L461)

章节来源

  • [承兑平台产品方案文档.md:346-461](file://承兑平台产品方案文档.md#L346-L461)

营销中心

  • 返佣:按引荐商户交易量的一定比例返佣给介绍人
  • 补助:小额补助、夜间补助,支持固定金额/百分比/组合模式,可配置分摊方式
  • 防套利:随机化触发与次数上限(未来演进)

章节来源

  • [承兑平台产品方案文档.md:462-484](file://承兑平台产品方案文档.md#L462-L484)
  • [决策变更清单.md:228-235](file://决策变更清单.md#L228-L235)

钱包中心

  • 地址管理:为每用户每链分配独立地址(HD Wallet),兼容TRC20 Memo
  • 充值确认:监听链上确认,到账后更新数据库余额
  • 内部划转:平台内USDT划转(零Gas)
  • 提现审核:交易员申请提现,平台审核后链上转账
  • 冷热钱包:热钱包用于日常周转,冷钱包用于大额储备与多签

章节来源

  • [承兑平台产品方案文档.md:485-495](file://承兑平台产品方案文档.md#L485-L495)
  • [决策变更清单.md:109-118](file://决策变更清单.md#L109-L118)

通知中心

  • 站内信、短信/邮件、Webhook回调
  • 回调重试:指数退避(1s→5s→30s→5min→30min,最多5次)+ 商户手动重发兜底
  • 签名:HMAC-SHA256

章节来源

  • [决策变更清单.md:127-133](file://决策变更清单.md#L127-L133)

数据报表中心

  • 实时交易数据、财务统计、交易员绩效、商户分析
  • 为运营与风控提供数据支撑

章节来源

  • [承兑平台产品方案文档.md:322-331](file://承兑平台产品方案文档.md#L322-L331)

依赖分析

  • 组件耦合与内聚
    • 订单中心与钱包中心强耦合(资金锁定/划转)
    • 费率引擎与订单中心弱耦合(通过参数与计算结果)
    • 通知中心与各中心松耦合(异步回调/消息)
  • 外部依赖
    • 区块链网络(TRC20/ERC20/BEP20)
    • 合规/反洗钱服务
    • 短信/邮件服务
  • 风险与冗余
    • 冷热钱包与多签降低资金风险
    • Webhook重试与签名提升集成可靠性
mermaid
graph LR
O["订单中心"] --> W["钱包中心"]
O --> PR["费率引擎"]
O --> F["风控中心"]
O --> N["通知中心"]
W --> EX["区块链网络"]
P["平台"] --> KYC["合规/反洗钱"]

图表来源

  • [承兑平台产品方案文档.md:497-531](file://承兑平台产品方案文档.md#L497-L531)
  • [决策变更清单.md:134-140](file://决策变更清单.md#L134-L140)

章节来源

  • [承兑平台产品方案文档.md:497-531](file://承兑平台产品方案文档.md#L497-L531)
  • [决策变更清单.md:134-140](file://决策变更清单.md#L134-L140)

性能考虑

  • 交易速度:平台内USDT划转毫秒级,链上充值/提现分钟级
  • 并发与吞吐:订单中心与钱包中心需支持高并发订单与资金操作
  • 缓存与队列:Redis用于缓存与消息队列,降低数据库压力
  • 异步化:通知与回调采用异步处理,避免阻塞主流程

故障排查指南

  • 充值未到账
    • 检查链上确认与钱包监听
    • 核对地址与链类型匹配
  • 提现异常
    • 审核流程与多签状态检查
    • 热钱包余额与限额
  • 订单异常
    • 入金/出金状态机与超时处理
    • 争议仲裁与申诉流程
  • Webhook失败
    • 指数退避重试与手动重发
    • HMAC签名验证

章节来源

  • [承兑平台产品方案文档.md:598-654](file://承兑平台产品方案文档.md#L598-L654)
  • [决策变更清单.md:127-133](file://决策变更清单.md#L127-L133)

结论

本架构以“文档驱动 + 原型驱动”为核心,围绕做市与撮合的业务本质,构建了清晰的业务中台与中心,明确了资金与数据流,制定了分层混合托管方案,并在合规、风控、通知与报表等方面形成闭环。通过模块化与弱耦合设计,系统具备良好的可扩展性与可维护性,能够支撑从MVP到规模化的发展路径。

附录

系统上下文图

mermaid
graph TB
U["终端用户"] --> M["商户外汇平台"]
M --> P["承兑平台"]
P --> T["交易员"]
P --> R["运营后台"]
P --> EX["区块链网络"]
P --> KYC["合规/反洗钱服务"]

图表来源

  • [承兑平台产品方案文档.md:43-154](file://承兑平台产品方案文档.md#L43-L154)

组件分解图

mermaid
graph TB
subgraph "业务中台"
O["订单中心"]
PR["费率引擎"]
B["营销中心"]
F["风控中心"]
D["数据报表中心"]
end
subgraph "支撑中心"
W["钱包中心"]
N["通知中心"]
end
subgraph "终端"
M["商户端"]
T["交易员端"]
R["运营后台"]
end
M --> O
T --> O
R --> O
O --> PR
O --> W
O --> N
O --> F
O --> D
W --> EX
P --> KYC

图表来源

  • [承兑平台产品方案文档.md:295-495](file://承兑平台产品方案文档.md#L295-L495)

部署拓扑图

  • 建议采用分层混合托管:Layer 1(平台内部记账)+ Layer 2(热钱包)+ Layer 3(冷钱包多签)
  • 云服务:AWS/阿里云/腾讯云(新加坡/香港节点)
  • 数据库:PostgreSQL + Redis
  • 区块链节点:QuickNode/Alchemy或自建
  • 通知:Twilio/SendGrid/国内云通信

章节来源

  • [承兑平台产品方案文档.md:613-695](file://承兑平台产品方案文档.md#L613-L695)

架构决策的技术考量与权衡

  • 资金托管:初期采用分层混合托管,兼顾效率与安全;未来视合规进展引入链上Escrow
  • 报价体系:三层配置确保灵活性与可控性;报价偏离仅告警,避免过度自动化
  • 充值地址:统一独立地址(HD Wallet),兼容TRC20 Memo,简化用户识别
  • Webhook:指数退避+手动重发兜底,HMAC签名保障安全
  • 合规:先聘请合规律师,V1实现数据采集框架,逐步完善Travel Rule与制裁名单匹配

章节来源

  • [决策变更清单.md:107-165](file://决策变更清单.md#L107-L165)
  • [承兑平台产品方案文档.md:613-695](file://承兑平台产品方案文档.md#L613-L695)

跨领域关注点

  • 安全性:冷热分离、多签管理、提现风控、审计日志、保险机制
  • 监控:实时监控、熔断机制、风险准备金
  • 灾难恢复:备份与演练、多签审批、Webhook重试与幂等

章节来源

  • [承兑平台产品方案文档.md:782-792](file://承兑平台产品方案文档.md#L782-L792)
  • [决策变更清单.md:142-165](file://决策变更清单.md#L142-L165)