CN113761068A - 一种提升区块链网络并发处理能力的方法 - Google Patents
一种提升区块链网络并发处理能力的方法 Download PDFInfo
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 28
- 238000012795 verification Methods 0.000 claims description 9
- 150000001875 compounds Chemical class 0.000 claims description 3
- 230000008569 process Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000000926 separation method Methods 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2308—Concurrency control
- G06F16/2315—Optimistic concurrency control
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5083—Techniques for rebalancing the load in a distributed system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; 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中,负载均衡算法为:
进一步的,将区块的写入和查询进行分离,写入通过子链进行,查询通过主链完成。
有益效果
本发明提供了一种提升区块链网络并发处理能力的方法。与现有技术相比具备以下有益效果:
该提升区块链网络并发处理能力的方法,通过将请求按照路由算法将路由到不同的子链,如果对应的子链不存在,则动态创建一条子链,交易发送到指定的子链,发送成功后直接向请求方返回结果,子链通过达成共识出块后,通过消息队列将所有子链的区块集中到主链中。本发明将使得区块链网络有并行处理的能力,大大提高区块链网络的处理效率,提高吞吐量,支持更高的并发,同时支持网络横向扩展,理论上无限地提高并发处理能力,同时可以实现读写分离,交易通过子链写入到区块链,通过主链读取交易的信息。本发明的关键点是以一种路由的算法将交易路由到子链,子链完成共识和出块后,将区块信息发送到消息队列,主链通过消息队列将各子链的区块进行集中存储。欲保护的点是一种以主链和子链的模式,实现区块数据的读写分离,同时通过扩展子链,提高区块链并行处理的能力,提升交易处理的效率。
附图说明
图1为本发明的流程示意框图;
图2为本发明区块链并行处理的示意图;
图3为本发明交易请求处理的流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1-3,本发明实施例提供一种技术方案:一种提升区块链网络并发处理能力的方法,包括如下步骤:
S1、将交易请求n均发送至路由服务;
S2、所述路由服务根据负载均衡算法,将所述交易请求n转发至具体对应的子链n,若不存在对应的子链,则动态创建一条子链;
其中,负载均衡算法为:
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中,主链读取消息队列中的区块信息为异步读取。
7.根据权利要求6所述的一种提升区块链网络并发处理能力的方法,其特征在于,将区块的写入和查询进行分离,写入通过子链进行,查询通过主链完成。
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)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023207082A1 (zh) * | 2022-04-29 | 2023-11-02 | 蚂蚁区块链科技(上海)有限公司 | 负载均衡方法及装置和电子设备 |
Citations (9)
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 |
-
2021
- 2021-09-15 CN CN202111077047.4A patent/CN113761068A/zh active Pending
Patent Citations (9)
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)
Title |
---|
熊健等: "《区块链技术原理及应用》", 合肥工业大学出版社, pages: 118 - 125 * |
Cited By (1)
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 |