主页 > imtoken钱包劫持 > 基于Java的开源比特币交易所| 比特币兑换 | ETH 交易所 | 数字的
基于Java的开源比特币交易所| 比特币兑换 | ETH 交易所 | 数字的
密码交换
介绍
基于 Java 的比特币交易所 | 比特币兑换 | ETH 交易所 | 数字货币兑换 | 交易平台 | 匹配交易引擎。 本项目基于SpringCloud微服务开发,可用于数字货币交易所的搭建和二次开发。 拥有完整配套的交易引擎源码、后台管理(后台+前台)、前台(交易页面、活动页面、个人中心等)、安卓APP源码、苹果APP源码、币钱包RPC源代码。
吉特:
系统架构总结
系统运行环境
中央操作系统 6.8
MySQL 5.5.16
Redis-x64-3.2.100
MongoDB 3.6.13
kafka_2.11-2.2.1
nginx-1.16.0
JRE 8u241
JDK 1.8
视图
动物园管理员
文件目录说明
00_框架
└──——admin后台管理API
└──——bitrade-job任务管理
└──——聊天场外聊天
└──——云SpringCloud微服务管理
└──——核心核心
└──——交易所撮合交易引擎
└──——exchange-api撮合交易API
└──——exchange-core 撮合交易核心
└──——jar第三方类库
└──————market 行情API,K线生成
└──——otc-api 场外交易API
└──——otc-core 场外交易核心
└──——sql SQL脚本
└──——ucenter-api用户中心API
└──——wallet钱包资产管理,负责与RPC对接
01_wallet_rpc
└————行动
└──——bch
└──——比特币
└──——bsv
└──——btm
└──——等等
└──——eos
└──————erc-eusdt
└──——erc-token
└————伦理
└──——eth-support
└──——库
└──——ltc
└──——rpc-common
└──——usdt
└──——xmr
02_App_Android
03_App_IOS
04_Web_Admin
05_Web_Front
教程
准备mysql数据库,创建名为“xxxx”的数据库
准备redis缓存数据库
准备kafka流处理环境(先配置运行zookper,再配置运行kafka)
准备mongodb数据库环境,创建用户admin,xxxxbtc最新交易所,创建bitrade数据库
准备阿里云OSS(修改项目中需要配置的地方)
准备nginx并修改配置文件(可选,正式上线需要配置)
修改框架代码中的配置文件,为准备环境配置参数
编译生成jar可执行文件
运行 cloud.jar(微服务注册表)
运行 market.jar(市场中心)
运行 exchange.jar (Exchange Central)
运行 ucenter.jar(用户中心)
运行其他模块
打开mysql,在框架代码中导入sql文件夹下的xxxxxxx.sql文件,注意如果触发器的sql报错,需要为钱包表添加触发器
运行前端vue项目
运行后台vue项目
运行钱包 RPC
运行自动交易机器人程序(这部分代码没有上传,但不影响)
防范措施
内存不足时,在linux控制台输入top,可以看到java进程占用内存较大(一个java进程占用1G多),因为需要运行的jar包比较多,所以需要来控制一些jar包使用的内存。 目前控制如下4:
java -jar -Xms128m -Xmx128m -Xmn200m -Xss256k admin-api.jar
java -jar -Xms512m -Xmx512m -Xmn200m -Xss256k cloud.jar
java -jar -Xms512m -Xmx512m -Xmn200m -Xss256k wallet.jar
java -jar -Xms512m -Xmx512m -Xmn200m -Xss256k activity.jar
关于电子邮件和短信
系统支持邮件和短信发送系统运行状态
系统通知/告警支持:用户注册、用户认证、用户充值/提现、币种RPC运行状态、系统资源使用监控等24种监控
关于数据库脚本的问题
有朋友反映没有完整的SQL文件。 这是因为编译成功的Jar在第一次运行后会自动将Entity映射到数据库结构中。 项目中的SQL只是完成一些Springcloud无法完成的数据库结构。 数据库自动生成配置位于application.properties配置文件中:
#jpa spring.jpa.show-sql=true spring.data.jpa.repositories.enabled=true spring.jpa.hibernate.ddl-auto=update
spring.jpa.hibernate.ddl-auto=update 这个配置会自动更新数据库结构。
核心功能说明(客户端)
注册/登录/实名认证/审核(目前只支持手机,二次开发可以加邮箱,很简单)
Banner/公告/帮助/自定义页面(Banner支持PC和APP分别设置,帮助支持多种分类模式)
法币C2C交易/法币OTC交易(支持两种法币模型,平台可在项目前期承接C2C法币兑换,后期可开通OTC交易)
币币交易(支持限价委托、市价委托,二次开发可添加其他委托方式)
邀请注册/推广合伙人(支持每日、每周、每月排名统计邀请推广及佣金数量)
创新实验室(这部分支持的功能较多,详解。另外,APP暂时不支持全部功能)
6-1。 初始抢购活动的模式(例如,当有新的交易对发布时,可以设置一定数量的货币来抢购该交易对)
6-2。 第一种分发活动方式(比如BTC/USDT交易对发行前,官方会拿出5个BTC进行活动,按照用户充值和抵押的USDT数量平均分发BTC)
6-3。 泛买模式(若ZZZ/USDT交易对发行前ZZZ币价为5USDT,官方发行活动价为0.5USDT,可采用该模式)
6-4。 控制面板共享模式(如6-3,但均匀分布)
6-5。 矿机活动模式(支持用户抵押一定数量的币种btc最新交易所,官方承诺每月返还一定数量的币种)
红包功能(支持平台和官方发放一定数量币种的红包,此功能适合用户裂变)
用户资产管理、流量管理、委托管理、实名管理等多种基础管理
核心功能说明(管理端)
概要(查看平台运营数据,包括交易量、注册人数、充值等)
会员管理(会员信息管理、会员实名审核、会员实名管理、会员余额管理、会员充值/冻结余额等)
邀请管理(会员邀请信息、会员邀请排名管理)
CTC管理(CTC订单管理、流程管理、承兑商管理)
内容管理(PC广告管理、APP广告管理、公告管理、帮助管理)
财务管理(充值提现管理、资金流向管理、对账管理、货币钱包余额管理)
币种管理(新建交易对、管理交易对、新建交易机器人、设置交易机器人参数、设置行情引擎/交易引擎、取消所有订单)
活动管理(新活动、矿机认购、抢购/分期管理)
红包管理(平台红包管理、用户红包管理)
系统管理(角色管理、部门管理、用户管理、权限管理、货币管理、RPC管理、版本管理)
保证金管理(设计时考虑了该功能,实际操作中未使用)
场外管理(广告管理、订单管理、场外币种管理、退单管理等,该功能未在实际运行中测试)
系统展示(PC前端)
系统运行展示(APP前端)
系统运行展示(后台)