数字资产交易方法、系统和计算机可读存储介质与流程

文档序号:18938954发布日期:2019-10-23 00:59阅读:169来源:国知局
数字资产交易方法、系统和计算机可读存储介质与流程

本发明涉及数字资产领域,尤其涉及一种数字资产交易方法、系统和计算机可读存储介质。



背景技术:

区块链技术发端于虚拟货币,自2009年以来,虚拟货币在全球范围内兴起,区块链接收逐步走进人们的视野。目前,世界各国政府、产业界和学术界都高度关注区块链的应用发展,相关的技术创新和模式创新不断涌现。区块链作为一门新兴技术,正在吸引着越来越多的人员投入进来。

区块链技术具有很多独特的优势,如去中心化、强化信任、分布式记账、不可篡改等,但区块链技术作为一种链条结构,随着加入人数的增多,区块节点的不断增加,数据的增大,区块链会出现响应速度变慢和存储容量不足等问题,导致现有的基于区块链技术的数字资产交易平台并发容量小、交易速度慢。



技术实现要素:

本发明的主要目的在于提供一种数字资产交易方法、系统和计算机可读存储介质,旨在实现提供一种基于区块链技术的并发容量大、交易速度快的数字资产交易方法。

为实现上述目的,本发明提供一种数字资产交易方法,所述数字资产交易方法包括以下步骤:

接口层接收网站端发送的数字资产交易的服务请求,并将所述服务请求发送给业务层;

业务层接收所述服务请求,并根据所述服务请求分发给对应的模块进行对应处理。

可选地,所述服务请求包括交易请求,所述接口层接收网站端发送的服务请求,并将所述服务请求发送给业务层的步骤,包括:

所述接口层接收网站端发送的交易请求,并将所述交易请求发送给业务层中的交易撮合模块;

其中,所述业务层接收所述服务请求,并根据所述服务请求分发给对应的模块进行对应处理的步骤,包括:

所述业务层中的交易撮合模块接收所述交易请求,并根据所述交易请求分发给对应的模块进行对应交易处理。

可选地,所述业务层中的交易撮合模块接收所述交易请求,并根据所述交易请求分发给对应的模块进行对应交易处理的步骤包括:

所述业务层中的交易撮合模块接收所述接口层发送的交易请求,并根据所述交易请求进行撮合,生成对应的交易订单,并将所述交易订单发送给业务层中的交易计算模块和数据层中的数据记录模块;

所述数据记录模块记录所述交易订单;

所述业务层中的交易计算模块接收所述交易订单,并根据所述交易订单进行计算,并将所述计算结果发送给数据层中的数据存储模块;

数据层中的数据存储模块根据所述计算结果进行数据更新。

可选地,所述服务请求包括查询请求,所述接口层接收网站端发送的服务请求,并将所述服务请求发送给业务层的步骤,包括:

所述接口层接收网站端发送的查询请求,并将所述查询请求发送给业务层中的数据查询模块;

其中,所述业务层接收所述服务请求,并根据所述服务请求分发给对应的模块进行对应处理的步骤,包括:

所述业务层中的数据查询模块接收所述查询请求,并根据所述查询请求分发给对应的模块进行对应查询处理。

可选地,所述业务层中的数据查询模块接收所述查询请求,并根据所述查询请求分发给对应的模块进行对应查询处理的步骤包括:

所述业务层中的数据查询模块接收所述接口层发送的查询请求,并将所述查询请求发送给数据层中的数据存储模块;

所述数据层中的数据存储模块接收所述查询请求,并根据所述查询请求获得查询结果,并将所述查询结果返回给业务层中的数据查询模块;

所述业务层中的数据查询模块接收所述查询结果,并将所述查询结果通过接口层反馈给对应的网站端。

可选地,所述接口层接收网站端发送的数字资产交易的服务请求,并将所述服务请求发送给业务层的步骤之前还包括:

监控层对所述网站端发送的服务请求进行安全性验证;

在所述服务请求通过安全性验证后,执行步骤:接口层接收网站端发送的数字资产交易的服务请求,并将所述服务请求发送给业务层。

此外,为实现上述目的,本发明还提供一种数字资产交易系统,所述数字资产交易系统包括:

接口层,用于接收网站端发送的数字资产交易的服务请求,并将所述服务请求发送给业务层;

业务层,用于接收接口层发送过来的服务请求,并根据所述服务请求分发给对应的模块进行对应处理。

可选地,所述服务请求包括交易请求,所述业务层包括交易撮合模块,

所述交易撮合模块,用于接收所述交易请求,并根据所述交易请求分发给对应的模块进行对应交易处理。

可选地,所述业务层包括数据查询模块,所述服务请求包括查询请求,

所述数据查询模块,用于接收所述查询请求,并根据所述查询请求分发给对应的模块进行对应查询处理。

此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有数字资产交易程序,所述数字资产交易程序被处理器执行时实现上述的数字资产交易方法的步骤。

本发明提供一种数字资产交易方法、系统和计算机存储介质。在该方法中,接口层接收网站端发送的数字资产交易的服务请求,并将所述服务请求发送给业务层;业务层接收所述服务请求,并根据所述服务请求分发给对应的模块进行对应处理。通过上述方式,本发明能够对交易平台的架构采用分层、分模块的微服务化部署形式,将服务请求通过分层、分模块的进行处理,使得数字资产交易的服务请求能够较快的进行处理,从而增大基于区块链技术的数字交易平台的并发容量和加快交易速度。

附图说明

图1是本发明实施例方案涉及的硬件运行环境的系统结构示意图;

图2为本发明数字资产交易方法第一实施例的流程示意图;

图3为本发明数字资产交易方法第二实施例的流程示意图;

图4为本发明数字资产交易方法第三实施例的流程示意图;

图5为本发明数字资产交易方法第四实施例的流程示意图;

图6为本发明数字资产交易方法第五实施例的流程示意图;

图7为本发明数字资产交易方法第六实施例的流程示意图;

图8为本发明数字资产交易方法第一实施例的交易平台框架图;

图9为本发明数字资产交易方法第一实施例的交易平台部署图;

图10为本发明数字资产交易方法第一实施例的主要业务流程图。

本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

如图1所示,图1是本发明实施例方案涉及的硬件运行环境的系统结构示意图。

本发明实施例数字资产交易系统中的网络端可以是pc,也可以是智能手机、平板电脑、便携计算机等具有数据处理功能的终端设备。

如图1所示,该网络端可以包括:处理器1001,例如cpu,网络接口1004,用户接口1003,存储器1005,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(display)、输入单元比如键盘(keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如wi-fi接口)。存储器1005可以是高速ram存储器,也可以是稳定的存储器(non-volatilememory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。

本领域技术人员可以理解,图1中示出的网络端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。

除此之外,本发明数字资产交易系统还可以包括如下部分:代理机、交易平台、分布式数据存储服务器、监控报警服务器。

接口层包括accesshttp模块和accessws模块;

业务层包括matchengine模块、marketprice模块和readhistory模块;

数据层包括kafka模块、redis模块和mysql模块

监控层包括alertcenter模块。

如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及数字资产交易程序。

在图1所示的终端中,网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;用户接口1003主要用于连接客户端(用户端),与客户端进行数据通信;

在业务处理过程中,数字资产交易程序被各层中设备执行时,执行如下步骤:

接口层接收网站端发送的数字资产交易的服务请求,并将所述服务请求发送给业务层;

业务层接收所述服务请求,并根据所述服务请求分发给对应的模块进行对应处理。

进一步地,处理器1001可以调用存储器1005中存储的数字资产交易程序,还执行以下操作:

所述接口层接收网站端发送的交易请求,并将所述交易请求发送给业务层中的交易撮合模块;

其中,所述业务层接收所述服务请求,并根据所述服务请求分发给对应的模块进行对应处理的步骤,包括:

所述业务层中的交易撮合模块接收所述交易请求,并根据所述交易请求分发给对应的模块进行对应交易处理。

进一步地,处理器1001可以调用存储器1005中存储的数字资产交易程序,还执行以下操作:

所述业务层中的交易撮合模块接收所述接口层发送的交易请求,并根据所述交易请求进行撮合,生成对应的交易订单,并将所述交易订单发送给业务层中的交易计算模块和数据层中的数据记录模块;

所述数据记录模块记录所述交易订单;

所述业务层中的交易计算模块接收所述交易订单,并根据所述交易订单进行计算,并将所述计算结果发送给数据层中的数据存储模块;

数据层中的数据存储模块根据所述计算结果进行数据更新。

进一步地,处理器1001可以调用存储器1005中存储的数字资产交易程序,还执行以下操作:

所述接口层接收网站端发送的查询请求,并将所述查询请求发送给业务层中的数据查询模块;

其中,所述业务层接收所述服务请求,并根据所述服务请求分发给对应的模块进行对应处理的步骤,包括:

所述业务层中的数据查询模块接收所述查询请求,并根据所述查询请求分发给对应的模块进行对应查询处理。

进一步地,处理器1001可以调用存储器1005中存储的数字资产交易程序,还执行以下操作:

所述业务层中的数据查询模块接收所述接口层发送的查询请求,并将所述查询请求发送给数据层中的数据存储模块;

所述数据层中的数据存储模块接收所述查询请求,并根据所述查询请求获得查询结果,并将所述查询结果返回给业务层中的数据查询模块;

所述业务层中的数据查询模块接收所述查询结果,并将所述查询结果通过接口层反馈给对应的网站端。

进一步地,处理器1001可以调用存储器1005中存储的数字资产交易程序,还执行以下操作:

监控层对所述网站端发送的服务请求进行安全性验证;

在所述服务请求通过安全性验证后,执行步骤:接口层接收网站端发送的数字资产交易的服务请求,并将所述服务请求发送给业务层。

本发明数字资产交易系统的具体实施例与下述数字资产交易方法各实施例基本相同,在此不作赘述。

参照图2,图2为本发明数字资产交易方法第一实施例的流程示意图,所述数字资产交易方法包括:

步骤s100,接口层接收网站端发送的数字资产交易的服务请求,并将所述服务请求发送给业务层;

在本实施例中,网站端可以为pc,也可以为智能手机、平板电脑、便携计算机等具有数据处理功能的终端设备。用户可以通过这些终端设备上的交易平台的用户交互界面进行相关交互操作,交互界面有电脑版和手机版web界面,用户可通过web站点使用交易平台的所有对外服务功能。

接口层包括至少一个以上的accesshttp接口模块和/或accessws接口模块。accesshttp接口模块可以提供基于jsonrpc的http协议接口,供website服务端对服务端调用资产查询/转入/转出、询价/竞价下单、订单/交易数据查询等接口功能。accessws接口模块可以提供标准的websocket协议接口,可查询和订阅k线、行情报价、交易流水等数据的接口功能。通过nginx作为http握手连接和中转收发数据。

业务层包括至少一个以上的matchengine模块、marketprice模块和/或readhistory模块。matchengine模块可以进行账户资产查询/转入/转出、询价/竞价下单、交易撮合等业务运算处理。marketprice模块可以进行k线数据和行情报价数据的计算、缓存与查询等功能。readhistory模块可以进行多维度的历史订单、交易流水、资产流水等记录数据查询功能。

数字资产交易的服务请求包括虚拟币的充值、提现、余额的查询、市场买入、市场卖出、k线、挂单、下单、撤单、查询等服务请求。

在本实施例中,接口层接收网站端发送的数字资产交易的服务请求,如订单,查询等,并将所述服务请求发送给业务层进行处理。

步骤s200,业务层接收所述服务请求,并根据所述服务请求分发给对应的模块进行对应处理。

业务层接收所述服务请求,如订单,查询等,并根据所述服务请求分发给对应的模块进行对应处理,如生成订单、查询订单等操作。

进一步的,本发明实施例中,还可以包括数据层,数据层包括至少一个以上的kafka模块、redis模块和/或mysql模块。kafka模块、redis模块和mysql模块提供数据存储和保存的作用。

如图8所示,图8为数字资产交易方法的交易平台框架图。在图8中,用户在网站端通过互联网和代理机将服务请求发送给接口层的accesshttp接口模块和accessws接口模块。accesshttp接口模块和/或accessws接口模块将服务请求发送给业务层中的matchengine模块、marketprice模块和/或readhistory模块进行处理。监控层的alertcenter模块提供监控服务,同时数据层中的kafka模块、redis模块和/或mysql模块提供服务数据存储功能。

如图9所示,图9为数字资产交易方法的交易平台部署图。在图9中,网站端与接口层如accesshttp接口模块和accessws接口模块连接,接口层连接业务层如matchengine模块、marketprice模块和readhistory模块,同时接口层连接监控层如alertcenter模块,并且接口层也与数据层如kafka模块、redis模块和mysql模块连接。

如图10所示,图10为数字资产交易方法的主要业务流程图。在图10中,用户通过网站端发起服务请求如下单或查询,并将所述服务请求发送给接口层,如accesshttp接口模块和accessws接口模块。接口层将服务请求发送业务端,如matchengine模块和marketprice模块。业务层在凑合订单或者查询订单的过程中,查询数据层如kafka模块和redis模块中的数据信息。业务层获得结果后,将结果通过接口层返回给用户。

本发明提供一种数字资产交易方法、系统和计算机存储介质。在该方法中,接口层接收网站端发送的数字资产交易的服务请求,并将所述服务请求发送给业务层;业务层接收所述服务请求,并根据所述服务请求分发给对应的模块进行对应处理。通过上述方式,本发明能够对交易平台的架构采用分层、分模块的微服务化部署形式,将服务请求通过分层、分模块的进行处理,使得数字资产交易的服务请求能够较快的进行处理,从而增大基于区块链技术的数字交易平台的并发容量和加快交易速度。

请参阅图3,图3为本发明数字资产交易方法第二实施例的流程示意图。

基于上述实施例,本实施例中,步骤s100包括:

步骤s110,所述接口层接收网站端发送的交易请求,并将所述交易请求发送给业务层中的交易撮合模块;

在本发明实施例中,所述服务请求包括交易请求。接口层接收网站端发送的交易请求,并将所述交易请求发送给业务层中的交易撮合模块。在本发明实施例中,交易交易撮合模块可以为图8中的matchengine模块,可以进行账户资产查询/转入/转出、询价/竞价下单、交易撮合等业务运算处理。

其中,步骤s200包括:

步骤s210,所述业务层中的交易撮合模块接收所述交易请求,并根据所述交易请求分发给对应的模块进行对应交易处理。

业务层中的交易撮合模块接收所述交易请求,并根据所述交易请求分发给对应的模块进行对应交易处理。业务层中的交易撮合模块即matchengine模块在接收到所述交易请求后,根据交易请求生产订单,并进行后台系统的订单处理工作,具体通过业务层中的交易计算模块即marketprice模块进行订单处理工作。

请参阅图4,图4为本发明数字资产交易方法第三实施例的流程示意图。

基于上述实施例,本实施例中,步骤s210包括:

步骤s211,所述业务层中的交易撮合模块接收所述接口层发送的交易请求,并根据所述交易请求进行撮合,生成对应的交易订单,并将所述交易订单发送给业务层中的交易计算模块和数据层中的数据记录模块;

在本实施例中,如果业务层中的交易撮合模块接收所述接口层发送的交易请求,则根据所述交易请求进行撮合,生成对应的交易订单,并将所述交易订单发送给业务层中的交易计算模块和数据层中的数据记录模块。

业务层中的交易计算模块可以为图8中的marketprice模块,可以根据交易订单合并计算挂单数据和统计计算交易数据。

业务层中的数据记录模块可以为图8中的kafka模块,可以消费下单消息和消费交易成功消息。

步骤s212,所述数据记录模块记录所述交易订单;

数据记录模块即kafka模块接收交易订单后,将交易订单进行消费记录。

步骤s213,所述业务层中的交易计算模块接收所述交易订单,并根据所述交易订单进行计算,并将所述计算结果发送给数据层中的数据存储模块;

业务层中的交易计算模块即marketprice模块接收所述交易订单,并根据所述交易订单进行计算,并将所述计算结果发送给数据层中的数据存储模块即redis模块。

步骤s214,数据层中的数据存储模块根据所述计算结果进行数据更新。

数据层中的数据存储模块即redis模块根据所述计算结果进行数据更新,如缓存挂单深度数据、缓存k线行情数据。

请参阅图5,图5为本发明数字资产交易方法第四实施例的流程示意图。

基于上述实施例,本实施例中,步骤s100包括:

步骤s120,所述接口层接收网站端发送的查询请求,并将所述查询请求发送给业务层中的数据查询模块;

在本发明实施例中,所述服务请求包括查询请求。接口层接收网站端发送的查询易请求,并将所述查询请求发送给业务层中的数据查询模块。在本发明实施例中,数据查询模块可以为图8中的marketprice模块,可以进行账户资产查询/转入/转出、询价/竞价下单、交易撮合等业务运算处理。

其中,步骤s200包括:

步骤s220,所述业务层中的数据查询模块接收所述查询请求,并根据所述查询请求分发给对应的模块进行对应查询处理。

业务层中的数据查询模块接收所述查询请求,并根据所述查询请求分发给对应的模块进行对应查询处理。业务层中的数据查询模块即marketprice模块在接收到所述查询请求后,根据查询请求进行查询。

请参阅图6,图6为本发明数字资产交易方法第五实施例的流程示意图。

基于上述实施例,本实施例中,步骤220包括:

步骤s221,所述业务层中的数据查询模块接收所述接口层发送的查询请求,并将所述查询请求发送给数据层中的数据存储模块;

在本实施例中,业务层中的数据查询模块接收所述接口层发送的查询请求,并将所述查询请求发送给数据层中的数据存储模块。

业务层中的数据查询模块可以为图8中的marketprice模块,可以拉取缓存list。

数据层中的数据存储模块可以为图8中的redis模块,可以返回缓存list。

步骤s222,所述数据层中的数据存储模块接收所述查询请求,并根据所述查询请求获得查询结果,并将所述查询结果返回给业务层中的数据查询模块;

数据层中的数据存储模块即redis模块接收所述查询请求,并根据所述查询请求获得查询结果,并将所述查询结果返回给业务层中的数据查询模块即marketprice模块。数据存储模块即redis模块存储有大量的后台数据,在查询过程中需要调用到redis模块中的数据进行查询。

步骤s223,所述业务层中的数据查询模块接收所述查询结果,并将所述查询结果通过接口层反馈给对应的网站端。

业务层中的数据查询模块即marketprice模块接收所述查询结果,并将所述查询结果通过接口层反馈给对应的网站端,即通过接口层返回给用户。

请参阅图7,图7为本发明数字资产交易方法第六实施例的流程示意图。

基于上述实施例,本实施例中,步骤s100之前包括:

步骤s010,监控层对所述网站端发送的服务请求进行安全性验证;

在本发明实施例中,监控层可以为图8中的alertcenter模块,alertcenter模块可以进行统一的日志收集/分析/查询、进程监控、发送预警/报警短信等功能。监控层可以对所述网站端发送的服务请求进行安全性验证。如验证用户的身份,例如通过私钥,公钥的模式,如果用户能够提供相应的证明,证明用户的身份合法,即符合通过安全性验证。

在所述服务请求通过安全性验证后,执行步骤s100:接口层接收网站端发送的数字资产交易的服务请求,并将所述服务请求发送给业务层。

若通过安全性验证后,则允许接口层接收网站端发送的数字资产交易的服务请求,并将所述服务请求发送给业务层。即允许用户通过系统平台进行相应的操作。

此外,本发明实施例还提出一种计算机可读存储介质。

本发明计算机可读存储介质上存储有数字资产交易程序,所述数字资产交易程序被处理器执行时实现如上所述的数字资产交易方法的步骤。

其中,在所述处理器上运行的数字资产交易程序被执行时所实现的方法可参照本发明数字资产交易方法各个实施例,此处不再赘述。

需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。

以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1