这可能是你目前能找到的一套真正开源、可直接落地的数字货币交易所源码。基于 SpringCloud 微服务,内置撮合引擎、Web & App 前后端、钱包 RPC,无需从头造轮子。下文从架构到部署再到常见问题,帮你一口气拆掉所有认知盲区。
项目亮点速览
- 全链路开源:撮合引擎、用户端、管理后台、原生 App、钱包 RPC 均给出源码。
- 微服务 + 水平扩展:SpringCloud 注册中心、配置中心、熔断器,一台服务器也能跑,十台也能水平扩容。
- 稳定性验证:曾为真实交易所生产环境服务,历经一年真实流量锤炼。
- 文档完备:部署脚本、安装手册、配置模板、演示视频一次配齐。
系统架构总览
1. 整体架构
使用 Nginx 统一入口 → SpringCloud Gateway → 各业务微服务 → Kafka 消息总线 → MySQL + MongoDB 混合存储 → Redis 热点缓存 → Zookeeper 协调。
2. 逻辑分层
- 撮合层:
Exchange进程常驻内存,每秒可撮合 万笔订单。 - 行情层:
Market实时产出 K 线(1 分钟、1 小时、1 日...)、深度、最新价。 - 用户&钱包:
ucenter、wallet独立微服务,保证“钱”和“人”解耦。 - 后台&运营:
admin统一运营后台,PC + App 两套广告位 + 活动引擎。
3. 部署架构
- 单机部署最低 4C8G(含钱包节点需 200G+ 硬盘)。
- 线上建议 8C16G 2 台 + 云数据库 起步,读写分离后再上 CDN 与 WAF。
你能用这套源干什么?
- 二次创业:7-10 天即可上线内盘测试,节省 6-12 个月研发时间。
- 教学实验:高校区块链课程、企业内部培训人手一套完整 Demo。
- 企业链改:将公链资产接入已有电商或金融平台,成为“虚拟资产交易插件”。
15 分钟上手:本地开发环境步骤
- 拉取代码
git clone <项目仓库>(注意目录层级)。 基础依赖一次装完
# CentOS 示例 yum install -y java-1.8.0-openjdk-devel mysql-server redis配置文件 3 步到位
- 修改
application-docker.yml的 MySQL、Redis、Kafka 地址。 - 设置 oss-endpoint、短信/邮件 AK/SK。
- 打开
spring.jpa.hibernate.ddl-auto=update,首次启动自动建表。
- 修改
一键启动脚本
已附install.sh:./install.sh local会在本地启动
cloud.jar → exchange.jar → market.jar → ucenter.jar等 6 个服务。
FAQ:大家都在问的常见 6 大问题
Q1:不会 Linux 能否用 Windows/Mac 跑?
A:可以。Win10+WSL2+Docker 即可;Mac 安装colima再走同一条脚本。Q2:公司要用 USDT 钱包自建节点硬盘不够怎么办?
A:可切换为 第三方钱包 API(已预留 07_Uduncloud 文件夹),直连三方节点,当天即可接入。Q3:撮合引擎宕机如何处理?
A:重启后依赖 Kafka 重启补偿机制,未成交订单自动回滚到撮合队列,无需人工核对。Q4:安全合规怎样落地?
A:后台已提供 实名认证、反洗钱黑名单对接、冷热钱包分层 三个子模块,按当地法规接入对应的 KYC SDK 即可。Q5:行情机器人会不会伪造深度?
A:参数化机器人可以调节“价差门限”,只小幅托盘,不会造成 0 滑点假象,安全可控。Q6:源码会不会闭源或二次收费?
A:主干分支永久开源,开发者可选 技术咨询/托管部署 等增值服务,源码本身零版权费用。
前后端核心能力清单
| 用户端 | 运营端 |
|---|---|
| 法币 & 币币撮合交易 | 交易对 / 机器人一键配置 |
| 抢购 / 首发分摊活动 | 空投 / 红包精准营销 |
| 邀请返佣 & 合伙人机制 | 用户订单 / 充值 / 提现集中审核 |
| 手机号注册 + 实名 KYC | 员工权限与敏感操作日志 |
SpringCloud 技术栈体系
- 网关 SpringCloud Gateway → 集成 Sentinel 熔断
- 配置 Nacos → 版本化、灰度发布
- 消息 Apache Kafka → 撮合行情链路解耦
- 缓存 Redis → 订单薄 90% 读命中
- 持久化 双数据:MySQL 事务一致性 + MongoDB 高速档
生产环境服务器建议
| 服务 | 配置 | 备注 |
|---|---|---|
| MySQL | 16C32G SSD | 主从 + binlog 保留 7 天 |
| Redis | 8C16G | 主从哨兵,RDB 每 5 分钟落盘 |
| Kafka | 8C16G | 3 节点集群,单 topic 128 分区 |
| 撮合引擎 | 8C16G | CPU ≥ 2.5GHz,内存≥16G,避免 GC STW |
| 钱包节点 | 4C8G 500G HDD | 可单独云主机,冷热分离 |
一键扩展到更多链
- 复制
01_wallet_rpc/eth文件夹 → 改名为新币种缩写(如trx)。 - 修改 RPC 配置、主网链 ID、小数位精度。
- 在
wallet-service增加该币种的余额地址监听接口。 - 交易所后台币币管理新增交易对 → 部署完成即可交易。
风险提示
- 代码仅供技术学习;任何商业应用须符合当地法规,作者不承担因违规运营引发的法律责任。
- 硬盘容量预警:BTC 全节点 500G+、ETH 轻节点 500G 以内。提前评估成本。
- 资金安全:务必使用冷钱包 + 多签,上线前做一次完整渗透测试。
小结:7 天 MVP 路线图
- Day1:环境准备 & 依赖安装
- Day2:首次编译,试运行撮合+行情
- Day3:导入交易对、设置机器人参数
- Day4:钱包节点接入,打通充值提现
- Day5:KYC/实名模块联调
- Day6:前后端 UI 品牌替换
- Day7:灰度上线,观察 24h 稳定性
只要按本文步骤执行,哪怕是 3-5 人技术小团队也能在 一周内从 0 到 1 推出可用的数字资产交易平台。开始动手,下一套热门交易所也许就出自你手。