巧用 Spring Cloud 搭建后端技术架构

Java项目开发

共 2197字,需浏览 5分钟

 · 2021-09-11



数字货币交易所项目

Spring Cloud Alibaba架构

1

项目介绍


开源数字货币交易所,基于Java开发的比特币交易所 ,包含BTC交易所、ETH交易所、数字货币交易所、交易平台、撮合交易引擎等核心模。项目技术采用业界最流行、社区非常活跃的开源组件Spring Cloud Alibaba来构建我们的交易系统,是行业第一家基于Alibaba技术的大型项目,也是Spring Cloud的最佳实践之一。近年来, 我国在CBDC的研究和测试工作走在全球前列,并且十分坚定推进该项工作。研究机构认为成本优势决定了DC/EP是否会被广泛接受,支持混合技术架构意味着围绕DC/EP 有望诞生更多的应用创新场景。在短期主要是金融基础设施的建设,在长期有望催生开放银行、物联网支付等更大规模的建设需求。其中银行IT厂商和提供身份认证的安全厂商主要受益。学习完本项目,大家将对云架构、区块链、法定数字货币、金融科技以及货币发展有自己更深入的认识和理解,为以后20年中国CDBD的研究和发展 作出自己的贡献,同时也为争取40w的年薪增加一份可靠的技术保障!


2

技术选型


1、 后端技术

Spring Cloud Alibaba + Spring Boot + Mybatis Plus + Elasticsearch + Kafka + Mongodb + Zookeeper + RocketMQ + OAuth2、0 + Jwt + Redis + Hutool + Orika + Fst + Swagger-ui + Mycat + Docker + ECS + OSS + 腾讯防水墙

2、 前端技术

Vue + + iView + less + axios


3

项目核心功能模块


1、 注册/登录/实名认证/审核(目前仅支持手机,二次开发可加入邮件,很简单)

2、 Banner/公告/帮助/定制页面(Banner支持PC与APP分开设置,帮助支持各种分类模式)

3、 法币C2C交易/法币OTC交易(支持两种法币模式,项目早期可由平台承担C2C法币兑换,后期可开放OTC交易)

4、 币币交易(支持限价委托、市价委托,二次开发可加入其它委托模式)

5、 邀请注册/推广合伙人(支持对邀请推广人数、佣金进行以日、周、月的排行统计)

6、 创新实验室(该部分支持功能较多,分项说明。)

6.1 首发抢购活动模式(如发行新交易对时,可对交易对设置一定数量的币种进行抢购)

6.2 首发分摊活动模式(如发行BTC/USDT交易对之前,官方拿出5BTC做活动,根据用户充值抵押的USDT多少进行均分BTC)

6.3 控盘抢购模式(如发行ZZZ/USDT交易对之前,ZZZ币种价格为5USDT,官方发行活动价为0、5USDT,则可使用该模式)

6.4 控盘均摊模式(如6-3,只不过平均分配)

6.5 矿机活动模式(支持用户抵押一定数量的币种,由官方承诺每月返还一定数量的币种)

7、 红包功能(支持平台及官方发放一定数量币种的红包,此功能适合用户裂变)

8、 用户资产管理、流水管理、委托管理、实名管理等各种基础管理


4

撮合交易引擎和钱包


1、 撮合交易引擎

本系统对交易队列采用内存撮合的方式进行,以Kafka做撮合订单信息传输,MongoDB持久化订单成交明细,MySQL记录订单总体成交。其中Exchange项目主要负责内存撮合、Market项目主要负责订单成交持久化、行情生成、行情推送等服务,包括:

1.1 K线数据,间隔分别为:1分钟、5分钟、15分钟、30分钟、1小时、1天、1周、1月

1.2 所有交易对的市场深度(market depth)数据

1.3 所有交易对的最新价格

1.4 最近成交的交易对

1.5 内存撮合交易支持的模式

1.6 限价订单与限价订单撮合

1.7 市价订单与限价订单撮合

1.8 限价订单与市价订单撮合

1.9 市价订单与市价订单撮合


2、 金融交易钱包对接

本项目提供两种钱包对接方式,一种是自建节点+区块链浏览器的方式,另一种是第三方钱包对接方式。如果你想使用自建节点或区块链浏览器,你直接使用framework中的代码进行编译即可。如果你想使用第三方钱包对接,你可以下载Uduncloud文件夹的优盾钱包的项目文件,把他们复制到framework中即可。

在这里,小编为大家准备了一份全面的资料给大家!

获取方式

需要以上资料的朋友请添加助理的微信免费领取

  加微信请备注【111】

在这里,小编为大家准备了一份全网最为全面的Java面试资料给大家!本套资料由大厂在职hr为大家整理!涵盖了所有大家在面试过程中可能会遇到的问题,希望能祝各位一臂之力!


文件列表小编放在下方了,请各位有需要的同学扫描下方二维码自行下载!JAVA面试题全套


  

这套资料从16个方面全面总结了在面试Java岗位过程中可能遇到的问题,希望可以帮助到各位在寻找工作机会的同学!

获取方式

需要以上资料的朋友请添加助理的微信免费领取

  加微信请备注【111

浏览 54
点赞
评论
收藏
分享

手机扫一扫分享

举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

举报