CN108924250A - 基于区块链的业务请求处理方法、装置和计算机设备 - Google Patents
基于区块链的业务请求处理方法、装置和计算机设备 Download PDFInfo
- Publication number
- CN108924250A CN108924250A CN201810845152.XA CN201810845152A CN108924250A CN 108924250 A CN108924250 A CN 108924250A CN 201810845152 A CN201810845152 A CN 201810845152A CN 108924250 A CN108924250 A CN 108924250A
- Authority
- CN
- China
- Prior art keywords
- block chain
- data
- data return
- task
- service request
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明涉及一种基于区块链的业务请求处理方法、系统、计算机设备和存储介质。所述方法包括:获取客户端发送的业务请求,所述业务请求中携带有目标业务数据的业务标识信息;根据所述业务标识信息确定所述业务请求对应的数据返回型任务;根据所述数据返回型任务向预先建立的区块链中的目标区块链节点发送数据返回指令,所述数据返回指令用于指示接收到所述数据返回指令的区块链节点在本地存储数据中查询所述目标业务数据,并将查询到的所述目标业务数据返回给所述客户端。采用本方法能够减少用户等待时间。
Description
技术领域
本发明涉及网络技术领域,特别是涉及一种基于区块链的业务请求处理方法、装置、计算机设备和存储介质。
背景技术
随着网络信息技术的发展,通过网络信息平台进行的相关技术的业务应用也越来越多,例如网络约车、网络租房等等。而随着这些网络技术应用的快速发展,与服务器交互的客户端设备也越来越多。此外,一个业务请求对应的主功能中往往夹杂很多其他附属功能,例如,在请求登录的时候去查询数据库提取用户相关信息后再返回登录状态;在请求推荐列表的时候,帖子内容关联到用户,关联点赞用户、评论用户、关注用户等非帖子自身数据表内容或需要动态计算出关注该帖子的用户数量、留言总数等。
传统的方式中,对业务请求的响应是采用直接同步计算的方式,这种方式从客户端发送到服务器的业务请求,往往需要在服务器耗费较多的时间才能返回主功能数据给服务端,用户等待时间较长。
发明内容
基于此,有必要针对上述技术问题,提供一种能够减少用户等待时间的基于区块链的业务请求处理方法、装置、计算机设备和存储介质。
一种基于区块链的业务请求处理方法,所述方法包括:
获取客户端发送的业务请求,所述业务请求中携带有目标业务数据的业务标识信息;
根据所述业务标识信息确定所述业务请求对应的数据返回型任务;
根据所述数据返回型任务向预先建立的区块链中的目标区块链节点发送数据返回指令,所述数据返回指令用于指示接收到所述数据返回指令的区块链节点在本地存储数据中查询所述目标业务数据,并将查询到的所述目标业务数据返回给所述客户端。
在其中一个实施例中,上述的根据所述数据返回型任务向预先建立的区块链中的目标区块链节点发送数据返回指令,包括:根据所述数据返回型任务向预先建立的区块链中与所述客户端具有最短通信距离的区块链节点发送数据返回指令。
在其中一个实施例中,上述的根据所述数据返回型任务向预先建立的区块链中的目标区块链节点发送数据返回指令,还包括:在当前接收到所述数据返回指令的区块链节点未在本地存储数据中查询到所述目标业务数据时,向当前接收到所述数据返回指令的区块链节点的相连区块链节点发送所述数据返回指令。
在其中一个实施例中,在所述相连区块链节点为多个时,通过最先获取到所述目标业务数据的相连区块链节点向所述客户端返回目标业务数据。
在其中一个实施例中,上述的基于区块链的业务请求处理方法还包括:根据所述业务标识信息确定所述业务请求对应的非数据返回型任务;在接收到所述数据返回指令的区块链节点将所述目标请求数据返回给所述客户端后,根据所述非数据返回型任务的数量,将所述非数据返回型任务分发给所述区块链中所述数量的区块链节点进行并行处理。
在其中一个实施例中,由处理所述非数据返回型任务的区块链节点将本地处理结果分发到所述区块链中;由区块链中的各个区块链节点将处理所述非数据返回型任务的区块链节点的本地处理结果进行汇总后保存。
在其中一个实施例中,所述非数据返回型任务包括数据计算任务和数据保存任务;接收到数据保存任务的区块链节点获取与接收到的数据保存任务对应的目标保存数据,将获取到的目标保存数据分发到所述区块链中;接收到数据计算任务的区块链节点对接收到的数据计算任务的对应的数据进行计算得到本地计算结果,将得到的本地计算结果发到所述区块链中。
一种基于区块链的业务请求处理装置,所述装置包括:
请求接收模块,用于获取客户端发送的业务请求,所述业务请求中携带有目标业务数据的业务标识信息;
任务区分模块,用于根据所述业务标识信息确定所述业务请求对应的数据返回型任务;
任务处理控制模块,用于根据所述数据返回型任务向预先建立的区块链中的目标区块链节点发送数据返回指令,所述数据返回指令用于指示接收到所述数据返回指令的区块链节点在本地存储数据中查询所述目标业务数据,并将查询到的所述目标业务数据返回给所述客户端。
一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
获取客户端发送的业务请求,所述业务请求中携带有目标业务数据的业务标识信息;
根据所述业务标识信息确定所述业务请求对应的数据返回型任务;
根据所述数据返回型任务向预先建立的区块链中的目标区块链节点发送数据返回指令,所述数据返回指令用于指示接收到所述数据返回指令的区块链节点在本地存储数据中查询所述目标业务数据,并将查询到的所述目标业务数据返回给所述客户端。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
获取客户端发送的业务请求,所述业务请求中携带有目标业务数据的业务标识信息;
根据所述业务标识信息确定所述业务请求对应的数据返回型任务;
根据所述数据返回型任务向预先建立的区块链中与所述客户端具有最短通信距离的区块链节点发送数据返回指令,所述数据返回指令用于指示接收到所述数据返回指令的区块链节点在本地存储数据中查询所述目标业务数据,并将查询到的所述目标业务数据返回给所述客户端。
上述基于区块链的业务请求处理方法、装置、计算机设备和存储介质,是在获取到客户端发送的业务请求后,先根据该业务请求中携带的目标业务数据的业务标识信息确定该业务请求对应的数据返回型任务,根据该数据返回型任务向目标区块链节点发送数据返回指令,用于指示该目标区块链节点获取到所述目标业务数据后返回给所述客户端,如此,将数据返回型任务单独分发给目标区块链节点处理,该目标区块链节点获得所述目标业务数据后将该目标业务数据返回给所述客户端,也就不需要等待其他类型的任务全部处理完成之后再返回客户端,可以减少用户的等待时间。
附图说明
图1为一个实施例中基于区块链的业务请求处理方法的应用环境图;
图2为一个实施例中基于区块链的业务请求处理方法的流程示意图;
图3为另一个实施例中基于区块链的业务请求处理方法的流程示意图;
图4为一个实施例中基于区块链的业务请求处理装置的结构框图;
图5为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明提供的基于区块链的业务请求处理方法,可以应用于如图1所示的应用环境中,包括电子装置101、终端102以及区块链103。电子装置101可以通过网络、近场通信技术等适合的技术与终端102进行数据交互。区块链103包括分布式的多个区块链节点,各个区块链节点可以分别是一个独立的网络服务器,也可以是任意多个区块链节点是一个独立的网络服务器,或者全部区块链节点和电子装置101一起是一个独立的网络服务器。
终端102包括但不限于任何一种可与用户通过键盘、鼠标、遥控器、触摸板或者声控设备等方式进行人机交互的电子产品,例如,个人计算机、平板电脑、智能手机、个人数字助理(Personal Digital Assistant,PDA),游戏机、交互式网络电视(Internet ProtocolTelevision,IPTV)、智能式穿戴式设备等。终端102中安装有相应的客户端软件,该客户端软件可以预先安装在上述终端102,也可以是在终端102启动后,从第三方设备或网络服务器进行下载并安装。其中,第三方设备在实施例中不作限定。具体的,终端102的客户端软件,可用于实现终端102与电子装置101之间的交互。以下实施例中以终端102中安装客户端软件为例进行说明。在以下实施例中,终端102中安装的客户端软件称为客户端。
电子装置101是一种能够按照事先设定或者存储的指令,自动进行数值计算和/或信息处理的设备。电子装置101可以是计算机、也可以是单个网络服务器、多个网络服务器组成的服务器集群或者基于云计算的由大量主机或者网络服务器构成的云,其中云计算是分布式计算的一种,由一群松散耦合的计算机集组成的一个超级虚拟计算机。
在本实施例中,电子装置101包括,但不仅限于可通过系统总线相互通信连接的存储器1011、处理器1012及网络接口1013。需要指出的是,图3仅示出了具有组件1011-1013的电子装置101,这仅仅是示出了与本发明实施例有关的组件,根据需要,可以替代的实施更多或者更少的组件。
其中,存储器1011包括内存及至少一种类型的可读存储介质。内存为电子装置101的运行提供缓存;可读存储介质可为如闪存、硬盘、多媒体卡、卡型存储器等的非易失性存储介质。在一些实施例中,可读存储介质可以是电子装置101的内部存储单元,例如该电子装置101的硬盘;在另一些实施例中,该非易失性存储介质也可以是电子装置101的外部存储器,例如电子装置101上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。本实施例中,存储器1011的可读存储介质通常用于存储安装于电子装置101的操作系统和各类应用软件,例如本发明一实施例中的基于区块链的业务请求处理装置1010的程序代码等。此外,存储器1011还可以用于暂时地存储已经输出或者将要输出的各类数据。
处理器1012在一些实施例中可以包括一个或者多个微处理器、微控制器、数字处理器等。处理器1012通常用于控制电子装置101的运行,例如执行与终端102进行数据交互或者通信相关的控制和处理等。在本实施例中,处理器1012用于运行存储器1011中存储的程序代码或者处理数据,例如运行基于区块链的业务请求处理装置1010等。
网络接口1013可包括无线网络接口或有线网络接口,该及网络接口1013通常用于在电子装置101与其他电子设备之间建立通信连接。本实施例中,网络接口13主要用于将电子装置101与一个或多个终端102相连,在电子装置101与一个或多个终端102之间建立数据传输通道和通信连接。
基于区块链的业务请求处理装置1010包括至少一个存储在存储器1011中的计算机可读指令,该至少一个计算机可读指令可被处理器1012执行,以实现本申请各实施例的基于区块链的业务请求处理方法。如后续所述,该至少一个计算机可读指令依据其各部分所实现的功能不同,可被划为不同的逻辑模块。
在一实施例中,基于区块链的业务请求处理装置3010被处理器1012执行时,实现以下操作:获取客户端发送的业务请求,所述业务请求中携带有目标业务数据的业务标识信息;根据所述业务标识信息确定所述业务请求对应的数据返回型任务;根据所述数据返回型任务向预先建立的区块链中的目标区块链节点发送数据返回指令,所述数据返回指令用于指示接收到所述数据返回指令的区块链节点在本地存储数据中查询所述目标业务数据,并将查询到的所述目标业务数据返回给所述客户端。相对于传统的需要执行完所有处理任务再返回目标业务数据的方式,可以减少用户的等待时间。
在一个实施例中,如图2所示,提供了一种基于区块链的业务请求处理方法,以该方法应用于图1中的电子装置为例进行说明,包括以下步骤:
步骤S201:获取客户端发送的业务请求,所述业务请求中携带有目标业务数据的业务标识信息;
本发明实施例中,客户端可以运行在图1的终端上;本发明实施例中所述的目标业务数据的业务标识信息可以理解为用于将该目标业务数据与其他数据进行区分的标识信息,该标识信息可以为目标业务数据的名称或目标业务数据的类型信息等等。所述的目标业务数据是指需要向所述客户端返回的数据。
步骤S202:根据所述业务标识信息确定所述业务请求对应的数据返回型任务;
本发明实施例中,数据返回型任务可以理解为需要向客户端进行数据返回的任务,也即所述业务请求对应的请求主功能数据的任务。
具体地,根据所述业务请求查询所述业务请求对应的各处理任务,根据所述业务标识信息对所述业务请求对应的各处理任务进行区分,得到与所述业务标识信息匹配的处理任务,将该与所述业务标识信息匹配的处理任务确定为数据返回型任务。
步骤S203:根据所述数据返回型任务向预先建立的区块链中的目标区块链节点发送数据返回指令,所述数据返回指令用于指示接收到所述数据返回指令的区块链节点在本地存储数据中查询所述目标业务数据,并将查询到的所述目标业务数据返回给所述客户端。
这里,目标区块链节点可以是区块链中任意的一个或者多个区块链节点,也可以是满足预设条件的一个或者多个区块链节点,接收到所述数据返回指令的区块链节点可以是所述目标区块链节点。
具体地,根据所述数据返回型任务向预先建立的区块链中的目标区块链节点发送数据返回指令,接收到所述数据返回指令的区块链节点(这里指目标区块链节点)在该接收到所述数据返回指令的区块链节点的本地存储数据中查询对应的账本,将账本内容进行解密后得到所述目标业务数据,将得到的目标业务数据返回给所述客户端。
上述基于区块链的业务请求处理方法中,是在获取到客户端发送的业务请求后,先根据该业务请求中携带的目标业务数据的业务标识信息确定该业务请求对应的数据返回型任务,根据该数据返回型任务向目标区块链节点发送数据返回指令,用于指示该目标区块链节点获取到所述目标业务数据后返回给所述客户端,如此,将数据返回型任务单独分发给目标区块链节点处理,该目标区块链节点获得所述目标业务数据后将该目标业务数据返回给所述客户端,也就不需要等待其他类型的任务全部处理完成之后再返回客户端,可以减少用户的等待时间。
在其中一个实施例中,上述的根据所述数据返回型任务向预先建立的区块链中的目标区块链节点发送数据返回指令,可以包括:根据所述数据返回型任务向预先建立的区块链中与所述客户端具有最短通信距离的区块链节点发送数据返回指令。也即,上述的目标区块链节点为与所述客户端具有最短通信距离的区块链节点。
其中,发送数据返回指令可以携带所述业务标识信息或者所述数据返回型任务的标识信息。指示接收到所述数据返回指令的区块链节点可以根据所述业务标识信息或者所述数据返回型任务的标识信息在本地存储数据中查询所述目标业务数据,并将查询到的所述目标业务数据返回给所述客户端。
具体地,可以获取运行所述客户端的终端对应的IP(网络之间互连的协议,Internet Protocol)地址信息,将运行所述客户端的终端对应的IP地址信息与区块链中的各个区块链节点的IP地址信进行比较,根据比较结果确定与所述客户端具有最短通信距离的区块链节点。其中,基于IP地址信息确定通信距离远近可以采用任意可以实现的方式。接收到所述数据返回指令的区块链节点在本地存储数据中查询与所述业务标识信息或者所述数据返回型任务的标识信息对应的账本,进行解密后得到所述目标业务数据,将得到的所述目标业务数据返回给所述客户端。
本实施例中,通过指令控制与所述客户端具有最短通信距离的区块链节点执行数据获取与返回操作,可以节约业务请求的处理时间,提升业务请求处理效率,可以进一步减少用户的等待时间。同时,本发明实施例中,是基于分布式的区块链实现,当同一时间需要处理大量的业务请求时,可以显著提高处理效率。
在其中一个实施例中,上述的根据所述数据返回型任务向预先建立的区块链中的目标区块链节点发送数据返回指令,还可以包括:在当前接收到所述数据返回指令的区块链节点未在本地存储数据中查询到所述目标业务数据时,向当前接收到所述数据返回指令的区块链节点的相连区块链节点发送所述数据返回指令。
这里,相连区块链节点是指同一区块链中与当前接收到所述数据返回指令的区块链节点直接相连的区块链节点。本领域技术人员应该可以了解,当前接收到所述数据返回指令的区块链节点可以是与所述客户端具有最短通信距离的区块链节点,但也不限于是与所述客户端具有最短通信距离的区块链节点。例如,与所述客户端具有最短通信距离的区块链节点为区块链节点k,区块链节点k的相连区块链节点是区块链节点k+1,区块链节点k+1的相连区块链节点是区块链节点k+2,以此类推。在区块链节点k未在区块链节点k的本地存储数据中查询到所述目标业务数据时,向区块链节点k+1发送所述数据返回指令,此时的当前接收到所述数据返回指令的区块链节点是区块链节点k,即与所述客户端具有最短通信距离的区块链节点,在区块链节点k+1未在区块链节点k+1的本地存储数据中查询到所述目标业务数据时,向区块链节点k+2发送所述数据返回指令,此时的当前接收到所述数据返回指令的区块链节点是区块链节点k+1。
在存在多个相连区块链节点时,可以是向任意一个相连区块链节点发送所述数据返回指令,以指示该相连区块链节点在本地存储数据中查询所述目标业务数据,并将查询到的所述目标业务数据返回给所述客户端。
在其中一个实施例中,在所述相连区块链节点为多个时,通过最先获取到所述目标业务数据的相连区块链节点向所述客户端返回目标业务数据。如此,可以进一步减少用户的等待时间。
在一个实施例中,如图3所示,提供了一种基于区块链的业务请求处理方法,以该方法应用于图1中的电子装置为例进行说明,包括以下步骤:
步骤S301:获取客户端发送的业务请求,所述业务请求中携带有目标业务数据的业务标识信息;
步骤S302:根据所述业务标识信息确定所述业务请求对应的数据返回型任务和非数据返回型任务;
步骤S303:根据所述数据返回型任务向预先建立的区块链中的目标区块链节点发送数据返回指令,所述数据返回指令用于指示接收到所述数据返回指令的区块链节点在本地存储数据中查询所述目标业务数据,并将查询到的所述目标业务数据返回给所述客户端;
步骤S304:在接收到所述数据返回指令的区块链节点将所述目标请求数据返回给所述客户端后,根据所述非数据返回型任务的数量,将所述非数据返回型任务分发给所述区块链中所述数量的区块链节点进行并行处理。
其中,在将非数据返回型任务分发给区块链节点后,由处理所述非数据返回型任务的区块链节点将本地处理结果分发到所述区块链中,由所述区块链中的各个区块链节点将处理所述非数据返回型任务的区块链节点的本地处理结果进行汇总后保存。
例如,对于包括区块链节点1、区块链节点2、区块链节点3、......、区块链节点n的区块链,有m个非数据返回型任务,可以根据一些预设规则或者随机向区块链中的m个区块链节点分发非数据返回型任务,每个区块链节点处理一个非数据返回型任务,m个处理所述非数据返回型任务的区块链节点分别将各自本地处理结果分发到区块链中。然后,区块链中的n个区块链节点分别根据这m个处理所述非数据返回型任务的区块链节点所分发的本地处理结果进行汇总,将汇总结果保存各自的本地存储数据中。一般是将汇总结果汇总成一个账本的形式进行保存,在汇总前对该账本进行加密处理,对加密后的账本进行保存。
本实施例中,通过将所述非数据返回型任务分发给区块链中所述数量的区块链节点进行并行处理,可以提升处理效率。同时,在接收到所述数据返回指令的区块链节点将所述目标请求数据返回给所述客户端后,再根据所述非数据返回型任务的数量,将所述非数据返回型任务分发给所述区块链中所述数量的区块链节点进行并行处理,也可以避免对数据返回型任务处理过程的影响。
但需要说明的是,对非数据返回型任务的分发方式并不限于这种平均分发的方式,例如,也可以将所述非数据返回型任务集中分发给一个或者多个区块链节点进行处理。
在其中一个实施例中,所述非数据返回型任务包括数据计算任务和数据保存任务;接收到数据保存任务的区块链节点获取与接收到的数据保存任务对应的目标保存数据,将获取到的目标保存数据分发到区块链中;接收到数据计算任务的区块链节点对接收到的数据计算任务的对应的数据进行计算得到本地计算结果,将得到的本地计算结果发到区块链中。其中,上述分发到区块链中的本地处理结果包括这里的分发到区块链中的目标保存数据和分发到区块链中的本地计算结果。
在其中一个实施例中,本发明的基于区块链的业务请求处理方法,还可以包括:通过异步操作方式将非数据返回型任务从所述数据返回型任务所在的主线程转移到任务队列,在接收到所述数据返回指令的区块链节点将所述目标请求数据返回给所述客户端后,处理所述任务队列中的非数据返回型任务。
其中,处理所述任务队列中的非数据返回型任务可以包括:将所述非数据返回型任务分发给所述区块链中所述数量的区块链节点进行并行处理。
本实施例的方案,将非数据返回型任务从所述数据返回型任务所在的主线程移动到任务队列,可以使得主线程中的剩余任务尽快处理完成,缩短用户的等待时间。
应该理解的是,虽然图2-3的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-3中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图4所示,提供了一种基于区块链的业务请求处理装置,包括:请求接收模块401、任务区分模块402和任务处理控制模块403,其中:
请求接收模块401,用于获取客户端发送的业务请求,所述业务请求中携带有目标业务数据的业务标识信息;
任务区分模块402,用于根据所述业务标识信息确定所述业务请求对应的数据返回型任务;
任务处理控制模块403,用于根据所述数据返回型任务向预先建立的区块链中的目标区块链节点发送数据返回指令,所述数据返回指令用于指示接收到所述数据返回指令的区块链节点在本地存储数据中查询所述目标业务数据,并将查询到的所述目标业务数据返回给所述客户端。
在其中一个实施例中,任务处理控制模块403可以根据所述数据返回型任务向预先建立的区块链中与所述客户端具有最短通信距离的区块链节点发送数据返回指令。
在其中一个实施例中,任务处理控制模块403可以在当前接收到所述数据返回指令的区块链节点未在本地存储数据中查询到所述目标业务数据时,向当前接收到所述数据返回指令的区块链节点的相连区块链节点发送所述数据返回指令。
在其中一个实施例中,在所述相连区块链节点为多个时,任务处理控制模块603还用于控制最先获取到所述目标业务数据的相连区块链节点向所述客户端返回目标业务数据。
在其中一个实施例中,任务区分模块402还可以用于根据所述业务标识信息确定所述业务请求对应的非数据返回型任务;任务处理控制模块403,用于在接收到所述数据返回指令的区块链节点将所述目标请求数据返回给所述客户端后,根据所述非数据返回型任务的数量,将所述非数据返回型任务分发给所述区块链中所述数量的区块链节点进行并行处理。
在其中一个实施例中,任务处理控制模块403还用于指示处理所述非数据返回型任务的区块链节点将本地处理结果分发到所述区块链中;任务处理控制模块403还用于指示区块链中的各个区块链节点将处理所述非数据返回型任务的区块链节点的本地处理结果进行汇总后保存。
在其中一个实施例中,所述非数据返回型任务包括数据计算任务和数据保存任务;任务处理控制模块403指示接收到数据保存任务的区块链节点获取与接收到的数据保存任务对应的目标保存数据,将获取到的目标保存数据分发到所述区块链中;任务处理控制模块403指示接收到数据计算任务的区块链节点对接收到的数据计算任务的对应的数据进行计算得到本地计算结果,将得到的本地计算结果发到所述区块链中。
关于基于区块链的业务请求处理装置的具体限定可以参见上文中对于基于区块链的业务请求处理方法的限定,在此不再赘述。上述基于区块链的业务请求处理装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图5所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储业务请求处理数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种基于区块链的业务请求处理方法。
本领域技术人员可以理解,图5中示出的结构,仅仅是与本发明方案相关的部分结构的框图,并不构成对本发明方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:
获取客户端发送的业务请求,所述业务请求中携带有目标业务数据的业务标识信息;
根据所述业务标识信息确定所述业务请求对应的数据返回型任务;
根据所述数据返回型任务向预先建立的区块链中的目标区块链节点发送数据返回指令,所述数据返回指令用于指示接收到所述数据返回指令的区块链节点在本地存储数据中查询所述目标业务数据,并将查询到的所述目标业务数据返回给所述客户端。
在一个实施例中,处理器执行计算机程序实现所述根据所述数据返回型任务向预先建立的区块链中的目标区块链节点发送数据返回指令的步骤时,具体实现以下步骤:根据所述数据返回型任务向预先建立的区块链中与所述客户端具有最短通信距离的区块链节点发送数据返回指令。
在一个实施例中,处理器执行计算机程序实现所述根据所述数据返回型任务向预先建立的区块链中的目标区块链节点发送数据返回指令的步骤时,还具体实现以下步骤:在当前接收到所述数据返回指令的区块链节点未在本地存储数据中查询到所述目标业务数据时,向当前接收到所述数据返回指令的区块链节点的相连区块链节点发送所述数据返回指令。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:根据所述业务标识信息确定所述业务请求对应的非数据返回型任务;在接收到所述数据返回指令的区块链节点将所述目标请求数据返回给所述客户端后,根据所述非数据返回型任务的数量,将所述非数据返回型任务分发给所述区块链中所述数量的区块链节点进行并行处理。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:指示处理所述非数据返回型任务的区块链节点将本地处理结果分发到所述区块链中;指示区块链中的各个区块链节点将处理所述非数据返回型任务的区块链节点的本地处理结果进行汇总后保存。
在一个实施例中,所述非数据返回型任务包括数据计算任务和数据保存任务;处理器执行计算机程序时还实现以下步骤:指示接收到数据保存任务的区块链节点获取与接收到的数据保存任务对应的目标保存数据,将获取到的目标保存数据分发到所述区块链中;指示接收到数据计算任务的区块链节点对接收到的数据计算任务的对应的数据进行计算得到本地计算结果,将得到的本地计算结果发到所述区块链中。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
获取客户端发送的业务请求,所述业务请求中携带有目标业务数据的业务标识信息;
根据所述业务标识信息确定所述业务请求对应的数据返回型任务;
根据所述数据返回型任务向预先建立的区块链中的目标区块链节点发送数据返回指令,所述数据返回指令用于指示接收到所述数据返回指令的区块链节点在本地存储数据中查询所述目标业务数据,并将查询到的所述目标业务数据返回给所述客户端。
在一个实施例中,计算机程序被处理器执行实现所述根据所述数据返回型任务向预先建立的区块链中的目标区块链节点发送数据返回指令的步骤时,具体实现以下步骤:根据所述数据返回型任务向预先建立的区块链中与所述客户端具有最短通信距离的区块链节点发送数据返回指令。
在一个实施例中,计算机程序被处理器执行实现所述根据所述数据返回型任务向预先建立的区块链中的目标区块链节点发送数据返回指令的步骤时,还具体实现以下步骤:在当前接收到所述数据返回指令的区块链节点未在本地存储数据中查询到所述目标业务数据时,向当前接收到所述数据返回指令的区块链节点的相连区块链节点发送所述数据返回指令。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:根据所述业务标识信息确定所述业务请求对应的非数据返回型任务;在接收到所述数据返回指令的区块链节点将所述目标请求数据返回给所述客户端后,根据所述非数据返回型任务的数量,将所述非数据返回型任务分发给所述区块链中所述数量的区块链节点进行并行处理。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:指示处理所述非数据返回型任务的区块链节点将本地处理结果分发到所述区块链中;指示区块链中的各个区块链节点将处理所述非数据返回型任务的区块链节点的本地处理结果进行汇总后保存。
在一个实施例中,所述非数据返回型任务包括数据计算任务和数据保存任务;计算机程序被处理器执行时还实现以下步骤:指示接收到数据保存任务的区块链节点获取与接收到的数据保存任务对应的目标保存数据,将获取到的目标保存数据分发到所述区块链中;指示接收到数据计算任务的区块链节点对接收到的数据计算任务的对应的数据进行计算得到本地计算结果,将得到的本地计算结果发到所述区块链中。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本发明所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种基于区块链的业务请求处理方法,其特征在于,所述方法包括:
获取客户端发送的业务请求,所述业务请求中携带有目标业务数据的业务标识信息;
根据所述业务标识信息确定所述业务请求对应的数据返回型任务;
根据所述数据返回型任务向预先建立的区块链中的目标区块链节点发送数据返回指令,所述数据返回指令用于指示接收到所述数据返回指令的区块链节点在本地存储数据中查询所述目标业务数据,并将查询到的所述目标业务数据返回给所述客户端。
2.根据权利要求1所述的基于区块链的业务请求处理方法,其特征在于,所述根据所述数据返回型任务向预先建立的区块链中的目标区块链节点发送数据返回指令,包括:
根据所述数据返回型任务向预先建立的区块链中与所述客户端具有最短通信距离的区块链节点发送数据返回指令。
3.根据权利要求2所述的基于区块链的业务请求处理方法,其特征在于,所述根据所述数据返回型任务向预先建立的区块链中的目标区块链节点发送数据返回指令,还包括:
在当前接收到所述数据返回指令的区块链节点未在本地存储数据中查询到所述目标业务数据时,向当前接收到所述数据返回指令的区块链节点的相连区块链节点发送所述数据返回指令。
4.根据权利要求3所述的基于区块链的业务请求处理方法,其特征在于,在所述相连区块链节点为多个时,通过最先获取到所述目标业务数据的相连区块链节点向所述客户端返回目标业务数据。
5.根据权利要求1至4任意一项所述的基于区块链的业务请求处理方法,其特征在于,所述方法还包括:
根据所述业务标识信息确定所述业务请求对应的非数据返回型任务;
在接收到所述数据返回指令的区块链节点将所述目标请求数据返回给所述客户端后,根据所述非数据返回型任务的数量,将所述非数据返回型任务分发给所述区块链中所述数量的区块链节点进行并行处理。
6.根据权利要求5所述的基于区块链的业务请求处理方法,其特征在于,处理所述非数据返回型任务的区块链节点将本地处理结果分发到所述区块链中;区块链中的各个区块链节点将处理所述非数据返回型任务的区块链节点的本地处理结果进行汇总后保存。
7.根据权利要求6所述的基于区块链的业务请求处理方法,其特征在于,所述非数据返回型任务包括数据计算任务和数据保存任务;接收到数据保存任务的区块链节点获取与接收到的数据保存任务对应的目标保存数据,将获取到的目标保存数据分发到所述区块链中;接收到数据计算任务的区块链节点对接收到的数据计算任务的对应的数据进行计算得到本地计算结果,将得到的本地计算结果发到所述区块链中。
8.一种基于区块链的业务请求处理装置,其特征在于,所述装置包括:
请求接收模块,用于获取客户端发送的业务请求,所述业务请求中携带有目标业务数据的业务标识信息;
任务区分模块,用于根据所述业务标识信息确定所述业务请求对应的数据返回型任务;
任务处理控制模块,用于根据所述数据返回型任务向预先建立的区块链中的目标区块链节点发送数据返回指令,所述数据返回指令用于指示接收到所述数据返回指令的区块链节点在本地存储数据中查询所述目标业务数据,并将查询到的所述目标业务数据返回给所述客户端。
9.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810845152.XA CN108924250B (zh) | 2018-07-27 | 2018-07-27 | 基于区块链的业务请求处理方法、装置和计算机设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810845152.XA CN108924250B (zh) | 2018-07-27 | 2018-07-27 | 基于区块链的业务请求处理方法、装置和计算机设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108924250A true CN108924250A (zh) | 2018-11-30 |
CN108924250B CN108924250B (zh) | 2022-02-11 |
Family
ID=64418672
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810845152.XA Active CN108924250B (zh) | 2018-07-27 | 2018-07-27 | 基于区块链的业务请求处理方法、装置和计算机设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108924250B (zh) |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109634810A (zh) * | 2018-12-10 | 2019-04-16 | 广东亿迅科技有限公司 | 基于Fabric的区块链业务平台和运行方法 |
CN110119428A (zh) * | 2019-04-19 | 2019-08-13 | 腾讯科技(深圳)有限公司 | 一种区块链信息管理方法、装置、设备及存储介质 |
CN110457914A (zh) * | 2019-07-09 | 2019-11-15 | 深圳壹账通智能科技有限公司 | 数据核对方法、装置、计算机设备和存储介质 |
CN110555017A (zh) * | 2019-07-25 | 2019-12-10 | 深圳壹账通智能科技有限公司 | 区块链数据清理方法、装置、计算机设备和存储介质 |
CN110830549A (zh) * | 2019-09-24 | 2020-02-21 | 北京海益同展信息科技有限公司 | 一种获取业务信息的方法、装置、电子设备及存储介质 |
CN111046266A (zh) * | 2019-12-11 | 2020-04-21 | 北京阿尔山区块链联盟科技有限公司 | 数据管理方法、装置和服务器 |
CN111262822A (zh) * | 2018-12-03 | 2020-06-09 | 中国电信股份有限公司 | 文件存储方法、装置、区块链节点和系统 |
CN111352938A (zh) * | 2020-02-26 | 2020-06-30 | 深圳市网心科技有限公司 | 数据处理方法、计算机设备及存储介质 |
CN111639363A (zh) * | 2020-05-24 | 2020-09-08 | 石高峰 | 基于区块链的数据分析方法及边缘计算服务器 |
CN111666582A (zh) * | 2019-03-08 | 2020-09-15 | 深圳市网安计算机安全检测技术有限公司 | 基于区块链的数据清理方法、装置、设备及存储介质 |
CN112486074A (zh) * | 2020-12-03 | 2021-03-12 | 上海哔哩哔哩科技有限公司 | 数据处理系统、方法及装置 |
CN113031883A (zh) * | 2021-02-26 | 2021-06-25 | 广东核电合营有限公司 | 标牌数据打印方法、装置、计算机设备和存储介质 |
CN113938495A (zh) * | 2021-12-17 | 2022-01-14 | 深圳市名竹科技有限公司 | 联盟链搭建方法、装置、计算机设备和存储介质 |
CN114489513A (zh) * | 2022-02-11 | 2022-05-13 | 上海驻云信息科技有限公司 | 一种基于本地磁盘中转的数据返回方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107018125A (zh) * | 2017-02-17 | 2017-08-04 | 阿里巴巴集团控股有限公司 | 一种区块链系统、数据存储方法及装置 |
CN107079058A (zh) * | 2016-12-23 | 2017-08-18 | 深圳前海达闼云端智能科技有限公司 | 区块链节点的业务执行方法、装置及节点设备 |
CN107315786A (zh) * | 2017-06-12 | 2017-11-03 | 腾讯科技(深圳)有限公司 | 业务数据存储方法及装置 |
US20180176229A1 (en) * | 2016-12-19 | 2018-06-21 | International Business Machines Corporation | Decentralized automated software updates via blockchain |
-
2018
- 2018-07-27 CN CN201810845152.XA patent/CN108924250B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180176229A1 (en) * | 2016-12-19 | 2018-06-21 | International Business Machines Corporation | Decentralized automated software updates via blockchain |
CN107079058A (zh) * | 2016-12-23 | 2017-08-18 | 深圳前海达闼云端智能科技有限公司 | 区块链节点的业务执行方法、装置及节点设备 |
CN107018125A (zh) * | 2017-02-17 | 2017-08-04 | 阿里巴巴集团控股有限公司 | 一种区块链系统、数据存储方法及装置 |
CN107315786A (zh) * | 2017-06-12 | 2017-11-03 | 腾讯科技(深圳)有限公司 | 业务数据存储方法及装置 |
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111262822B (zh) * | 2018-12-03 | 2022-04-19 | 中国电信股份有限公司 | 文件存储方法、装置、区块链节点和系统 |
CN111262822A (zh) * | 2018-12-03 | 2020-06-09 | 中国电信股份有限公司 | 文件存储方法、装置、区块链节点和系统 |
CN109634810A (zh) * | 2018-12-10 | 2019-04-16 | 广东亿迅科技有限公司 | 基于Fabric的区块链业务平台和运行方法 |
CN111666582A (zh) * | 2019-03-08 | 2020-09-15 | 深圳市网安计算机安全检测技术有限公司 | 基于区块链的数据清理方法、装置、设备及存储介质 |
CN111666582B (zh) * | 2019-03-08 | 2024-05-03 | 深圳市网安计算机安全检测技术有限公司 | 基于区块链的数据清理方法、装置、设备及存储介质 |
CN110119428A (zh) * | 2019-04-19 | 2019-08-13 | 腾讯科技(深圳)有限公司 | 一种区块链信息管理方法、装置、设备及存储介质 |
CN110457914A (zh) * | 2019-07-09 | 2019-11-15 | 深圳壹账通智能科技有限公司 | 数据核对方法、装置、计算机设备和存储介质 |
CN110555017A (zh) * | 2019-07-25 | 2019-12-10 | 深圳壹账通智能科技有限公司 | 区块链数据清理方法、装置、计算机设备和存储介质 |
CN110830549A (zh) * | 2019-09-24 | 2020-02-21 | 北京海益同展信息科技有限公司 | 一种获取业务信息的方法、装置、电子设备及存储介质 |
CN111046266A (zh) * | 2019-12-11 | 2020-04-21 | 北京阿尔山区块链联盟科技有限公司 | 数据管理方法、装置和服务器 |
CN111352938A (zh) * | 2020-02-26 | 2020-06-30 | 深圳市网心科技有限公司 | 数据处理方法、计算机设备及存储介质 |
CN111352938B (zh) * | 2020-02-26 | 2023-07-18 | 深圳市迅雷网络技术有限公司 | 数据处理方法、计算机设备及存储介质 |
CN111639363A (zh) * | 2020-05-24 | 2020-09-08 | 石高峰 | 基于区块链的数据分析方法及边缘计算服务器 |
CN111639363B (zh) * | 2020-05-24 | 2020-12-25 | 深圳市诚意信科技有限公司 | 基于区块链的数据分析方法及边缘计算服务器 |
CN112486074A (zh) * | 2020-12-03 | 2021-03-12 | 上海哔哩哔哩科技有限公司 | 数据处理系统、方法及装置 |
CN113031883A (zh) * | 2021-02-26 | 2021-06-25 | 广东核电合营有限公司 | 标牌数据打印方法、装置、计算机设备和存储介质 |
CN113938495A (zh) * | 2021-12-17 | 2022-01-14 | 深圳市名竹科技有限公司 | 联盟链搭建方法、装置、计算机设备和存储介质 |
CN114489513A (zh) * | 2022-02-11 | 2022-05-13 | 上海驻云信息科技有限公司 | 一种基于本地磁盘中转的数据返回方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN108924250B (zh) | 2022-02-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108924250A (zh) | 基于区块链的业务请求处理方法、装置和计算机设备 | |
CN109040227A (zh) | 基于区块链的业务请求响应方法、装置和计算机设备 | |
US9311110B2 (en) | Techniques to initialize from a remotely accessible storage device | |
CN107580083A (zh) | 一种容器ip地址分配的方法和系统 | |
CN104040521B (zh) | 生物特征云通信和数据移动 | |
CN108572833B (zh) | 自动应用更新 | |
CN108965450A (zh) | 业务请求响应方法、装置、计算机设备和存储介质 | |
CN104615448B (zh) | 一种软件渠道包更新方法、管理方法及设备 | |
CN106933871A (zh) | 短链接处理方法、装置及短链接服务器 | |
CN109743293A (zh) | 网络靶场的访问方法及网络靶场系统、计算机存储介质 | |
CN106572146A (zh) | 消息发送方法及消息发送装置 | |
CN107396199A (zh) | 弹幕数据展示方法及装置、计算机可读存储介质 | |
CN109508243A (zh) | 业务请求处理方法、装置、计算机设备和存储介质 | |
CN107370684A (zh) | 业务限流方法及业务限流装置 | |
CN115408715A (zh) | 基于区块链和ipfs的异构数据处理系统、方法及设备 | |
CN110728558A (zh) | 虚拟物品包发送方法、装置、设备和存储介质 | |
EP3570567B1 (en) | Method and device for operating instance resources | |
KR102245358B1 (ko) | 네트워크 리소스 요청을 제로 레이팅 네트워크 요청으로 변환하는 기술 | |
US9614900B1 (en) | Multi-process architecture for a split browser | |
US8156289B2 (en) | Hardware support for work queue management | |
CN107231664B (zh) | 一种用于对用户设备进行流量控制的方法与设备 | |
CN116911572A (zh) | 页面自动化装配方法、系统、计算机设备及存储介质 | |
CN115361285B (zh) | 实现离在线业务混合部署的方法、装置、设备及介质 | |
US11163537B1 (en) | Tiered application pattern | |
CN108924153A (zh) | 一种在图形化编程工具中的云变量操作方法及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |