CN113761068A - 一种提升区块链网络并发处理能力的方法 - Google Patents

一种提升区块链网络并发处理能力的方法 Download PDF

Info

Publication number
CN113761068A
CN113761068A CN202111077047.4A CN202111077047A CN113761068A CN 113761068 A CN113761068 A CN 113761068A CN 202111077047 A CN202111077047 A CN 202111077047A CN 113761068 A CN113761068 A CN 113761068A
Authority
CN
China
Prior art keywords
chain
sub
block
blocks
message queue
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.)
Pending
Application number
CN202111077047.4A
Other languages
English (en)
Inventor
袁运亮
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hucais Printing Co ltd
Original Assignee
Hucais Printing Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hucais Printing Co ltd filed Critical Hucais Printing Co ltd
Priority to CN202111077047.4A priority Critical patent/CN113761068A/zh
Publication of CN113761068A publication Critical patent/CN113761068A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2308Concurrency control
    • G06F16/2315Optimistic concurrency control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Strategic Management (AREA)
  • Technology Law (AREA)
  • General Business, Economics & Management (AREA)
  • Computing Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种提升区块链网络并发处理能力的方法,涉及区块链技术领域,包括将交易请求n均发送至路由服务;路由服务根据负载均衡算法,将交易请求n转发至具体对应的子链n;验证路由是否正确;达成共识后,子链n所对应的交易请求n打包到区块;将子链n出的新区块发送至消息队列;主链读取消息队列中的区块信息,并写入到主链中。该方法是通过负载均衡算法将交易导到某条子链,达成共识后,将交易放入区块,然后出块,同时各子链将新出的块提交到消息队列,主链应用订阅消息队列,消费消息队列中的区块,并将其提交到主链出块,子链出块后即可返回成功到前端,各子链的新块异步提交到主链,达到并行处理交易的目的。

Description

一种提升区块链网络并发处理能力的方法
技术领域
本发明涉及区块链技术领域,具体为一种提升区块链网络并发处理能力的方法。
背景技术
目前在区块链网络中每一笔交易都要按照时间戳进行排序,串行去处理,这样处理效率低,难以支持高并发的应用情况,当交易量较大时,一方面会造成处理时间较长,用户需要长时间的等待,另一方面交易的失败率会提高;
也是阻碍区块链技术普及的一个主要问题,因为现在的应用,特别是互联网应用,要求并发处理能力高、处理速度快,响应速度快,这样才会有很好的用户体验,应用才能得到用户的认可,从而大面积的推广,否则如果性能太差,一旦用户量变大就无法支持,甚至会导致整个系统奔溃,所以解决区块链网络的性能至关重要。
综上,本领域的技术人员提出了一种提升区块链网络并发处理能力的方法。
发明内容
针对现有技术的不足,本发明提供了一种提升区块链网络并发处理能力的方法,该方法通过并行子链结合父链的模式,使得前端交易可以并行的处理,生成的区块并行的提交。
为实现以上目的,本发明通过以下技术方案予以实现:一种提升区块链网络并发处理能力的方法,包括如下步骤:
S1、将交易请求n均发送至路由服务;
S2、所述路由服务根据负载均衡算法,将所述交易请求n转发至具体对应的子链n;
S3、与所述交易请求n对应的所述子链n验证路由是否正确;
S4、在对应的子链n中达成共识后,子链n所对应的交易请求n打包到区块;
S5、将对应的子链n出的新区块发送至消息队列;
S6、主链读取消息队列中的区块信息,依次逐个将各子链的区块写入到主链中,即可。
进一步的,所述步骤S2中,若不存在对应的子链,则动态创建一条子链。
进一步的,所述步骤S3中,若路由验证不正确,直接返回“路由验证不通过”消息,若路由验证正确,则进入步骤S4。
进一步的,所述步骤S4中,还包括:
对应所述子链n中节点验证区块后,将区块写入对应的子链n,成功后返回“出块成功”消息。
进一步的,所述步骤S6中,主链读取消息队列中的区块信息为异步读取。
进一步的,所述步骤S2中,负载均衡算法为:
Figure DEST_PATH_IMAGE002
式中,
Figure DEST_PATH_IMAGE004
为选择的子链的编号;
Figure DEST_PATH_IMAGE006
为交易请求的唯一编号;
Figure DEST_PATH_IMAGE008
为总的子链的条数。
进一步的,将区块的写入和查询进行分离,写入通过子链进行,查询通过主链完成。
有益效果
本发明提供了一种提升区块链网络并发处理能力的方法。与现有技术相比具备以下有益效果:
该提升区块链网络并发处理能力的方法,通过将请求按照路由算法将路由到不同的子链,如果对应的子链不存在,则动态创建一条子链,交易发送到指定的子链,发送成功后直接向请求方返回结果,子链通过达成共识出块后,通过消息队列将所有子链的区块集中到主链中。本发明将使得区块链网络有并行处理的能力,大大提高区块链网络的处理效率,提高吞吐量,支持更高的并发,同时支持网络横向扩展,理论上无限地提高并发处理能力,同时可以实现读写分离,交易通过子链写入到区块链,通过主链读取交易的信息。本发明的关键点是以一种路由的算法将交易路由到子链,子链完成共识和出块后,将区块信息发送到消息队列,主链通过消息队列将各子链的区块进行集中存储。欲保护的点是一种以主链和子链的模式,实现区块数据的读写分离,同时通过扩展子链,提高区块链并行处理的能力,提升交易处理的效率。
附图说明
图1为本发明的流程示意框图;
图2为本发明区块链并行处理的示意图;
图3为本发明交易请求处理的流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1-3,本发明实施例提供一种技术方案:一种提升区块链网络并发处理能力的方法,包括如下步骤:
S1、将交易请求n均发送至路由服务;
S2、所述路由服务根据负载均衡算法,将所述交易请求n转发至具体对应的子链n,若不存在对应的子链,则动态创建一条子链;
其中,负载均衡算法为:
Figure DEST_PATH_IMAGE002A
式中,
Figure DEST_PATH_IMAGE004A
为选择的子链的编号;
Figure DEST_PATH_IMAGE006A
为交易请求的唯一编号;
Figure DEST_PATH_IMAGE008A
为总的子链的条数。
S3、与所述交易请求n对应的所述子链n验证路由是否正确,若路由验证不正确,直接返回“路由验证不通过”消息,若路由验证正确,则进入下一步;
S4、在对应的子链n中达成共识后,子链n所对应的交易请求n打包到区块,对应所述子链n中节点验证区块后,将区块写入对应的子链n,成功后返回“出块成功”消息;
S5、将对应的子链n出的新区块发送至消息队列;
S6、主链异步读取消息队列中的区块信息,依次逐个将各子链的区块写入到主链中,即可。
为了进一步对本实施例进行说明,现进行举例:
假如现有100个交易请求,如果一个请求从客户端发出到达成共识,到最终记录到区块链,整个过程耗时2s,那么串行处理100个交易,总共耗时需要200s, 如果我们创建100条子链,通过路由算法,将这100个交易请求分别路由到这100条子链,那么这些交易可以并行处理,总共耗时将大大缩小到2s, 整个性能提升50倍,这样就能大大提高了整个区块链应用的并发处理能力。
因此,综上所述,该方法是通过负载均衡算法将交易导到某条子链,达成共识后,将交易放入区块,然后出块。同时各子链将新出的块提交到消息队列,主链应用订阅消息队列,消费消息队列中的区块,并将其提交到主链出块。子链出块后即可返回成功到前端,各子链的新块异步提交到主链,这样就达到并行处理交易的目的。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。

Claims (7)

1.一种提升区块链网络并发处理能力的方法,其特征在于,包括如下步骤:
S1、将交易请求n均发送至路由服务;
S2、所述路由服务根据负载均衡算法,将所述交易请求n转发至具体对应的子链n;
S3、与所述交易请求n对应的所述子链n验证路由是否正确;
S4、在对应的子链n中达成共识后,子链n所对应的交易请求n打包到区块;
S5、将对应的子链n出的新区块发送至消息队列;
S6、主链读取消息队列中的区块信息,依次逐个将各子链的区块写入到主链中,即可。
2.根据权利要求1所述的一种提升区块链网络并发处理能力的方法,其特征在于,所述步骤S2中,若不存在对应的子链,则动态创建一条子链。
3.根据权利要求1所述的一种提升区块链网络并发处理能力的方法,其特征在于,所述步骤S3中,若路由验证不正确,直接返回“路由验证不通过”消息,若路由验证正确,则进入步骤S4。
4.根据权利要求1所述的一种提升区块链网络并发处理能力的方法,其特征在于,所述步骤S4中,还包括:
对应所述子链n中节点验证区块后,将区块写入对应的子链n,成功后返回“出块成功”消息。
5.根据权利要求1所述的一种提升区块链网络并发处理能力的方法,其特征在于,所述步骤S6中,主链读取消息队列中的区块信息为异步读取。
6.根据权利要求1所述的一种提升区块链网络并发处理能力的方法,其特征在于,所述步骤S2中,负载均衡算法为:
Figure 911007DEST_PATH_IMAGE002
式中,
Figure 985405DEST_PATH_IMAGE004
为选择的子链的编号;
Figure 296300DEST_PATH_IMAGE006
为交易请求的唯一编号;
Figure 848767DEST_PATH_IMAGE008
为总的子链的条数。
7.根据权利要求6所述的一种提升区块链网络并发处理能力的方法,其特征在于,将区块的写入和查询进行分离,写入通过子链进行,查询通过主链完成。
CN202111077047.4A 2021-09-15 2021-09-15 一种提升区块链网络并发处理能力的方法 Pending CN113761068A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111077047.4A CN113761068A (zh) 2021-09-15 2021-09-15 一种提升区块链网络并发处理能力的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111077047.4A CN113761068A (zh) 2021-09-15 2021-09-15 一种提升区块链网络并发处理能力的方法

Publications (1)

Publication Number Publication Date
CN113761068A true CN113761068A (zh) 2021-12-07

Family

ID=78795590

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111077047.4A Pending CN113761068A (zh) 2021-09-15 2021-09-15 一种提升区块链网络并发处理能力的方法

Country Status (1)

Country Link
CN (1) CN113761068A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023207082A1 (zh) * 2022-04-29 2023-11-02 蚂蚁区块链科技(上海)有限公司 负载均衡方法及装置和电子设备

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101169785A (zh) * 2007-11-21 2008-04-30 浪潮电子信息产业股份有限公司 集群数据库系统的动态负载均衡方法
US20170235609A1 (en) * 2016-02-12 2017-08-17 Coho Data Inc. Methods, systems, and devices for adaptive data resource assignment and placement in distributed data storage systems
CN107423945A (zh) * 2017-04-13 2017-12-01 葛武 基于区块链技术的智能能源交易管理系统及方法
CN108600315A (zh) * 2018-03-22 2018-09-28 深圳市网心科技有限公司 区块链路由处理方法、装置及存储介质
CN108647095A (zh) * 2018-05-11 2018-10-12 北京奇虎科技有限公司 闲置存储空间的验证方法、存储终端、验证终端及系统
CN108881488A (zh) * 2018-08-01 2018-11-23 夸克链科技(深圳)有限公司 一种基于分域的区块链交易处理方法及网络
CN109886681A (zh) * 2019-01-31 2019-06-14 北京瑞卓喜投科技发展有限公司 区块链共识方法及共识系统
CN110545261A (zh) * 2019-08-12 2019-12-06 安徽云探索网络科技有限公司 一种应用于区块链网络中的共识算法
US20230088674A1 (en) * 2021-09-13 2023-03-23 Shopify Inc. Systems and methods for blockchain network congestion-adaptive digital asset event handling

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101169785A (zh) * 2007-11-21 2008-04-30 浪潮电子信息产业股份有限公司 集群数据库系统的动态负载均衡方法
US20170235609A1 (en) * 2016-02-12 2017-08-17 Coho Data Inc. Methods, systems, and devices for adaptive data resource assignment and placement in distributed data storage systems
CN107423945A (zh) * 2017-04-13 2017-12-01 葛武 基于区块链技术的智能能源交易管理系统及方法
CN108600315A (zh) * 2018-03-22 2018-09-28 深圳市网心科技有限公司 区块链路由处理方法、装置及存储介质
CN108647095A (zh) * 2018-05-11 2018-10-12 北京奇虎科技有限公司 闲置存储空间的验证方法、存储终端、验证终端及系统
CN108881488A (zh) * 2018-08-01 2018-11-23 夸克链科技(深圳)有限公司 一种基于分域的区块链交易处理方法及网络
CN109886681A (zh) * 2019-01-31 2019-06-14 北京瑞卓喜投科技发展有限公司 区块链共识方法及共识系统
CN110545261A (zh) * 2019-08-12 2019-12-06 安徽云探索网络科技有限公司 一种应用于区块链网络中的共识算法
US20230088674A1 (en) * 2021-09-13 2023-03-23 Shopify Inc. Systems and methods for blockchain network congestion-adaptive digital asset event handling

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
熊健等: "《区块链技术原理及应用》", 合肥工业大学出版社, pages: 118 - 125 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023207082A1 (zh) * 2022-04-29 2023-11-02 蚂蚁区块链科技(上海)有限公司 负载均衡方法及装置和电子设备

Similar Documents

Publication Publication Date Title
US11095750B2 (en) Method, apparatus, and electronic device for processing consensus requests in a blockchain consensus network
CN108648078B (zh) 一种交易预处理方法、装置及电子设备
JP7154234B2 (ja) ブロックチェーン・ネットワークにおける高速伝搬のための方法及び特殊ネットワーク・ノード
TWI717866B (zh) 跨鏈存證方法及接取方法、裝置、電子設備
JP2022547956A (ja) ブロックチェーンデータをインデックスする方法およびブロックチェーンデータを格納する方法
US20060047849A1 (en) Apparatus and method for packet coalescing within interconnection network routers
CN111338766A (zh) 事务处理方法、装置、计算机设备及存储介质
US11263270B1 (en) Heat balancing in a distributed time-series database
CN113204432A (zh) 区块链中的交易处理方法、装置及电子设备
CN113761068A (zh) 一种提升区块链网络并发处理能力的方法
CN108206839A (zh) 一种基于多数派数据存储方法、装置及系统
US20210357275A1 (en) Message stream processor microbatching
CN112040015B (zh) 一种共识节点列表生成方法及相关装置
CN111260364B (zh) 一种基于区块链的可扩展快速支付方法及系统
CN116977067A (zh) 基于区块链的数据处理方法、装置、设备及可读存储介质
CN113191901B (zh) 一种交易业务处理方法、装置、设备和存储介质
US20100082762A1 (en) Message tying processing method and apparatus
CN115987799A (zh) 一种区块链二层网络的扩容方法、装置及设备
US10819622B2 (en) Batch checkpointing for inter-stream messaging system
Spenger Using Blockchain for Tamper-Proof Broadcast Protocols
Triantafillou et al. Efficiently maintaining availability in the presence of partitionings in distributed systems
US20240163336A1 (en) Fast propagation of recent transactions over a blockchain network
CN114629806B (zh) 数据处理方法、装置、电子设备、存储介质及程序产品
Navab et al. CyliCon: Software package for 3D reconstruction of industrial pipelines
CN117808466A (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