区块链交易处理方法、装置及存储介质制造方法及图纸

技术编号:18668966 阅读:14 留言:0更新日期:2018-08-14 20:49
本发明专利技术提供一种区块链交易处理方法,该方法包括接收步骤:接收客户端用户发起的交易请求;及处理步骤:将交易请求分发到若干个结构相同的分区链中并行处理。本发明专利技术还提供一种电子装置及计算机可读存储介质,电子装置的处理器执行存储介质中存储的区块链交易处理程序时,可实现上述区块链交易处理方法。利用本发明专利技术,可对区块链进行水平扩展,将原发送到单一区块链处理的交易平均分散到若干个相同架构的区块链分区中并行处理。交易在不同分区具有相同的结构,能够保证交易在跨链转发的过程中被接受认可。

Block chain transaction processing method, device and storage medium

The invention provides a block chain transaction processing method, which comprises a receiving step: receiving a transaction request initiated by a client user; and a processing step: distributing a transaction request to a number of partitioned chains with the same structure for parallel processing. The invention also provides an electronic device and a computer readable storage medium, and the processor of the electronic device can realize the block chain transaction processing method when executing the block chain transaction processing program stored in the storage medium. With the invention, the block chain can be extended horizontally, and the transactions originally sent to a single block chain can be averagely distributed to several block chain partitions with the same architecture for parallel processing. Trading in different zones has the same structure, which can ensure that the transaction is accepted in the process of cross-chain forwarding.

【技术实现步骤摘要】
区块链交易处理方法、装置及存储介质
本专利技术涉及区块链领域,尤其涉及一种高性能的区块链交易处理系统及方法。
技术介绍
基于实用拜占庭容错共识算法(PracticalByzantineFaultTolerance,PBFT)的区块链系统,在接收到用户发起的交易请求后,要求区块链中的验证节点相互进行三轮投票。当用户请求数量大的情况下,网络通信负担重,尤其是当区块链中节点数量多的情况下,节点间通信量呈节点数的平方级增长,使得通信能力成为了区块链系统处理消息的瓶颈。
技术实现思路
鉴于以上内容,本专利技术提供一种高性能的区块链交易处理方法,对区块链进行水平扩展,将交易路由到不同的区块链分区进行并行处理,提高交易吞吐量及处理时效。为实现上述目的,本专利技术提供一种区块链交易处理方法,其该方法包括:接收步骤:接收客户端用户发起的交易请求;及处理步骤:将交易请求分发到若干个结构相同的分区链中并行处理。优选地,所述处理步骤包括:将各个交易请求方的地址与分区链的总分区数分别进行取模运算得到第一取模值,根据第一取模值与分区链的对应关系将各个交易请求发送至相应的第一分区链。此外,本专利技术还提供一种电子装置,该电子装置包括存储器及处理器。所述存储器上存储有区块链交易处理程序,该区块链交易处理程序被处理器执行时,实现如下步骤:接收步骤:接收客户端用户发起的交易请求;及处理步骤:将交易请求分发到若干个结构相同的分区链中并行处理。优选地,所述处理步骤包括:将各个交易请求方的地址与分区链的总分区数分别进行取模运算得到第一取模值,根据第一取模值与分区链的对应关系将各个交易请求发送至相应的第一分区链。此外,为实现上述目的,本专利技术还提供一种计算机可读存储介质,所述计算机可读存储介质中包括区块链交易处理程序,所述区块链交易处理程序被处理器执行时,可实现如上所述区块链交易处理方法中的步骤。本专利技术提出的区块链交易处理方法、装置及存储介质,将发送到单一区块链处理的交易平均分散到若干个相同架构的区块链分区中,对区块链进行了水平扩展,将交易路由到不同的区块链分区进行并行处理,可以实现交易秒级到账。交易在不同分区具有相同的结构,保证交易在跨链转发的过程中可以被接受认可,可适用于广泛的应用场景。附图说明图1为本专利技术实现高性能的区块链交易处理方法的电子装置较佳实施例的示意图。图2是本专利技术区块链交易处理方法对区块链进行水平扩展的示意图。图3为图2中具有相同结构的分区链的示意图。图4为本专利技术区块链交易处理方法第一较佳实施例的流程图。图5为本专利技术区块链交易处理方法第二较佳实施例的流程图。图6为本专利技术区块链交易处理方法第三较佳实施例的流程图。本专利技术目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。具体实施方式应当理解,此处所描述的具体实施例仅用以解释本专利技术,并不用于限定本专利技术。如图1所示,是本专利技术实现高性能的区块链交易处理方法的电子装置1较佳实施例的示意图。在本实施例中,电子装置1可以是服务器、智能手机、平板电脑、个人电脑、便携计算机以及其它具有运算功能的电子设备。该电子装置1包括:存储器11、处理器13、网络接口15及通信总线17。其中,网络接口15可选地可以包括标准的有线接口、无线接口(如WI-FI接口)。通信总线17用于实现这些组件之间的连接通信。存储器11至少包括一种类型的可读存储介质。所述至少一种类型的可读存储介质可为如闪存、硬盘、多媒体卡、卡型存储器等的非易失性存储介质。在一些实施例中,所述存储器11可以是所述电子装置1的内部存储单元,例如该电子装置1的硬盘。在另一些实施例中,所述存储器11也可以是所述电子装置1的外部存储单元,例如所述电子装置1上配备的插接式硬盘,智能存储卡(SmartMediaCard,SMC),安全数字(SecureDigital,SD)卡,闪存卡(FlashCard)等。在本实施例中,所述存储器11可以用于存储安装于所述电子装置1的应用软件及各类数据,例如区块链交易处理程序10的程序代码及其运行过程中产生的相关数据。处理器13在一些实施例中可以是一中央处理器(CentralProcessingUnit,CPU),微处理器或其它数据处理芯片,用于运行存储器11中存储的程序代码或处理数据。图1仅示出了具有组件11-17以及区块链交易处理程序10的电子装置1,但是应理解的是,图1并未示出电子装置1的所有组件,可以替代实施更多或者更少的组件。该电子装置1还可以包括射频(RadioFrequency,RF)电路、传感器和音频电路等等,在此不再赘述。在图1所示的电子装置1实施例中,作为一种计算机存储介质的存储器11中存储区块链交易处理程序10的程序代码,处理器13执行所述区块链交易处理程序10的程序代码时,将用户发起的交易请求路由到若干个架构相同的区块链分区中并行处理(如图2、图3所示)。以下结合图3~图6说明区块链交易处理程序10运行时实现的区块链交易处理方法。如图4所示,是本专利技术区块链交易处理方法第一较佳实施例的流程图。在本实施例中,在本实施例中,处理器13执行存储器11中存储的区块链交易处理程序10的程序代码时实现的区块链交易处理方法包括:步骤S10,接收客户端用户发起的交易请求。步骤S20,将交易请求分发到若干个结构相同的分区链中并行处理。如图2所示,具有相同结构的分区链总数为N(N为大于1的正整数),当接入层接收到用户发送的交易请求时,根据每个交易请求方的地址(类似于银行账号的一串数字)对分区数N取模的值,将交易请求分发到相应的分区链。例如,当某个交易请求方的地址对分区数N取模的值为1,该交易请求方的交易请求分发至分区链1处理;当另一个交易请求方的地址对分区数N取模的值为3,则将该交易请求方的交易请求分发至分区链3处理。在本实施例中,是以地址与分区链总数N的取模值对交易进行分发。在其他实施例中,也可以是依据其他映射关系对交易进行分发。关于步骤S20的具体介绍,请参图5及图6中相关步骤。例如,步骤S20可以参照图5中步骤S103、图6中步骤S303实现,也可以涉及图5、图6中更多其他的步骤。如图5所示,是本专利技术区块链交易处理方法第二较佳实施例的流程图。步骤S101,接收用户发送的交易请求。步骤S103,根据交易请求方的地址与分区链的总分区数N的取模值M1将该交易请求发送至第一分区链。例如,当M1=1时,该交易请求发送至如图2所示的第一分区链1。步骤S105,第一分区链的节点解析该交易请求及该交易的相关信息,以验证该交易请求的合法性和交易的有效性。如图3所示,每个分区链包括多个节点,包括但不限于,非记账节点(peer节点)、记账节点(validator节点)及监听节点(listener节点)。接收到交易请求后,非记账节点验证交易请求的合法性,即判断该交易请求是否属于本分区链的处理任务,验证方式为计算交易请求方的地址与分区链的总分区数N的取模值M1是否对应于该分区链,例如值M1是否等于该分区链的识别码。记账节点验证交易的有效性,例如该交易请求涉及的金额是否在允许范围之内。步骤S107,第一分区链的节点根据解析结果判断该交易请求是否合法、该交易是否有效。当判断该交易请求不合法、或该交易无效时,执行步骤S109,拒绝交易,流程可以本文档来自技高网...

【技术保护点】
1.一种区块链交易处理方法,其特征在于,该方法包括:接收步骤:接收客户端用户发起的交易请求;及处理步骤:将交易请求分发到若干个结构相同的分区链中并行处理。

【技术特征摘要】
1.一种区块链交易处理方法,其特征在于,该方法包括:接收步骤:接收客户端用户发起的交易请求;及处理步骤:将交易请求分发到若干个结构相同的分区链中并行处理。2.如权利要求1所述的区块链交易处理方法,其特征在于,所述处理步骤包括:将各个交易请求方的地址与分区链的总分区数分别进行取模运算得到第一取模值,根据第一取模值与分区链的对应关系将各个交易请求分发至相应的第一分区链。3.如权利要求1或2所述的区块链交易处理方法,其特征在于,所述处理步骤还包括:第一分区链每接收到一个交易请求时,验证该交易请求的合法性和交易的有效性;当验证交易请求合法且交易有效时,第一分区链将交易打包成区块,在第一分区链的节点间达成共识;第一分区链判断区块中的交易是否涉及跨链交易;当判断不涉及跨链交易时,在第一分区链中完成交易。4.如权利要求3所述的区块链交易处理方法,其特征在于,所述处理步骤还包括:当判断涉及跨链交易时,第一分区链根据交易接收方的地址与总分区数的第二取模值将跨链交易请求分别发送至相应的第二分区链;第二分区链验证接收到的跨链交易请求的合法性和该跨链交易的有效性;当验证跨链交易请求合法且跨链交易有效时,第二分区链将跨链交易打包成区块,在第二分区链的节点间达成共识,完成交易后反馈信息给相应的第一分区链。5.如权利要求3所述的区块链交易处理方法,其特征在于:所述第一分区链验证该交易请求是否合法是通过判断该交易请求方的地址与分区链的总分区数的第一取模值是否对应于该第一分区链;所述第一分区链判断区块中的一个交易是否涉及跨链交易是通过判断该交易接收方的地址与分区链的总分区数的第二取模值是否对应于该第一分区链,当该第二取模值对应的不是该第一分区链时,判断该交易涉及跨链交易。6.如权利要求4所述的区块链交易处理方法,其特征在于,所述第二分区链验证接收到的一个跨链交易请求是否合法是通过判断该跨链交易接收方的地址与分区链的总分区数的第二取模值是否对应于该第二分区链。7.如权利要求4所述的区块链交易处理方法,其特征在于,所述第一分区链将跨链交易请求分别发送至相应的第二分区链之前或之后,还执行以下操作:将跨链交易请求缓存至该第一分区链的内存。8.如权利要求7所述的区块链交易处理方法,其特征在于,所述第一分区链将跨链交易请求分别发送至相应的第二分区链之后,还执行以下操作:当超时未接收到该第二分区链发送的反馈信息时,从内存中读取该跨链交易请求重新发送至该...

【专利技术属性】
技术研发人员:来鑫刘星张骁
申请(专利权)人:深圳市网心科技有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1