CN111445329A - 一种区块链交易处理方法及系统 - Google Patents
一种区块链交易处理方法及系统 Download PDFInfo
- Publication number
- CN111445329A CN111445329A CN202010202525.9A CN202010202525A CN111445329A CN 111445329 A CN111445329 A CN 111445329A CN 202010202525 A CN202010202525 A CN 202010202525A CN 111445329 A CN111445329 A CN 111445329A
- Authority
- CN
- China
- Prior art keywords
- transaction
- main chain
- fragment
- processed
- block
- 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
- 238000003672 processing method Methods 0.000 title claims abstract description 18
- 239000012634 fragment Substances 0.000 claims abstract description 166
- 238000013467 fragmentation Methods 0.000 claims abstract description 37
- 238000006062 fragmentation reaction Methods 0.000 claims abstract description 37
- 238000000034 method Methods 0.000 claims abstract description 32
- 230000008569 process Effects 0.000 claims abstract description 11
- 238000012545 processing Methods 0.000 claims description 54
- 239000003999 initiator Substances 0.000 claims description 44
- 230000008878 coupling Effects 0.000 claims description 14
- 238000010168 coupling process Methods 0.000 claims description 14
- 238000005859 coupling reaction Methods 0.000 claims description 14
- 238000012546 transfer Methods 0.000 claims description 3
- 230000008859 change Effects 0.000 description 7
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000008602 contraction Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
Images
Classifications
-
- 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
-
- 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
- G06F16/275—Synchronous replication
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Databases & Information Systems (AREA)
- General Physics & Mathematics (AREA)
- Development Economics (AREA)
- Technology Law (AREA)
- General Business, Economics & Management (AREA)
- Strategic Management (AREA)
- Marketing (AREA)
- Computing Systems (AREA)
- Economics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本发明实施例公开了一种区块链交易处理方法及系统,涉及区块链技术领域,该方法应用于区块链系统,所述区块链系统包括主链以及至少一与所述主链并行的分片;该方法包括:主链定期获取到分片最新生成的区块的哈希值时,将哈希值记录在主链最新生成的区块中;主链检查分片的交易总量,判断交易总量是否小于或等于预设数量,若是,主链获取分片的各待处理交易,并处理各待处理交易;否则,分片根据主链上记录的各跨分片交易凭证,获取分片未处理的跨分片交易凭证,根据跨分片交易凭证生成待处理交易,并完成待处理交易。本发明实施方式有效地解决了分片所导致的区块链一致性差和可靠性低的问题。
Description
技术领域
本发明实施例涉及区块链技术领域,特别涉及一种区块链交易处理方法及系统。
背景技术
区块链是一个去中心化去信任的集体维护的可靠数据库,目前面临的最大问题之一就是可扩展性。所有主流的平台系统都在努力提高每秒的交易量。事实上,当今的比特币网络平均每秒可以处理7-10笔交易和以太坊网络每秒处理20-30笔交易,这一数字远低于像维萨Visa这样的中心化支付系统,后者平均每秒能处理约8000笔交易。缓慢的交易处理速度造成了区块链系统的一个主要问题:大量的未完成交易阻塞了网络,使得那些诸如实时支付这样的应用程序很难在区块链上一展身手,确认支付的时间拉长,就会给用户带来诸多不便,这也是为什么Visa这样的信用卡支付方式仍然更具吸引力的主要原因之一。
发明内容
鉴于此,本发明实施方式的目的在于提供一种区块链交易处理方法及系统,有效地解决了区块链存在的性能低下的问题。
为解决上述技术问题,本发明的实施方式所采用的技术方案如下:
本发明实施例提供一种区块链交易处理方法,该方法应用于区块链系统,所述区块链系统包括主链以及至少一与所述主链并行的分片;该方法包括:
主链定期获取到分片最新生成的区块的哈希值时,将哈希值记录在主链最新生成的区块中;
主链检查分片的交易总量,判断交易总量是否小于或等于预设数量,若是,主链获取分片的各待处理交易,并处理各待处理交易;否则,分片根据主链上记录的各跨分片交易凭证,获取分片未处理的跨分片交易凭证,根据跨分片交易凭证生成待处理交易,并完成待处理交易。
本发明实施方式相对于现有技术而言,区块链系统中的主链会定期将分片最新生成的区块的哈希值记录在主链最新生成的区块中,以实现主链与分片的定期“汇合”,从而实现了主链与分片的一致性,保证了区块链系统的可靠性。
进一步的技术方案是,主链定期获取到分片最新生成的区块的哈希值,具体包括:分片在新生成的区块高度到达第一预设高度时,停止生成新区块;或者,分片在处理的跨分片交易数量到达预设阈值时,停止生成新区块;主链在检测到分片停止生成新区块时,获取分片最新生成的区块的哈希值。这样,实现了主链定期获取到分片最新生成的区块的哈希值的一种具体实现形式,增加了本发明实施方式的灵活性。并且,主链在检测到分片停止生成新区块时,才获取分片最新生成的区块的哈希值进行记录,能够避免主链所定位的最新生成的区块出现偏差,进一步地保证了主链与分片的一致性。
进一步的技术方案是,区块链交易处理方法还包括:若主链新生成的区块高度到达第二预设高度,且主链未获取到分片最新生成的区块的哈希值,则主链停止生成新区块。这样,主链与分片未能正常“汇合”后,主链会停止生成新区块以等待分片的汇入,有效地保证了整个区块链系统的稳定性。
进一步的技术方案是,将哈希值记录在主链最新生成的区块后,主链检测分片的交易总量;若交易总量小于或等于预设数量,则主链获取分片的各待处理交易,并处理各待处理交易。这样,实现了区块链系统上分片的动态负载均衡,提升了区块链系统的资源有效利用率。
若交易总量大于预设数量,则分片根据主链上记录的各跨分片交易凭据,获取分片未处理的跨分片交易凭据;分片根据跨分片交易凭据生成待处理交易,并完成待处理交易;其中,分片完成待处理交易时,分片生成跨分片交易凭据,广播跨分片交易凭据,并在主链上记录跨分片交易凭据。通过这种方式,实现了后续整个区块链系统中各个分片与主链的一致性,有效地保证了整个区块链系统的稳定性。
本发明实施例提供一种区块链交易处理系统,包括主链以及至少一与所述主链并行的分片;
所述主链定期获取到分片最新生成的区块的哈希值时,将哈希值记录在主链最新生成的区块中;
主链检查分片的交易总量,判断交易总量是否小于或等于预设数量,若是,主链获取分片的各待处理交易,并处理各待处理交易;否则,分片根据主链上记录的各跨分片交易凭证,获取分片未处理的跨分片交易凭证,根据跨分片交易凭证生成待处理交易,并完成待处理交易。
进一步的技术方案是,所述主链以及至少一与所述主链并行的分片具体形式如下:获取待处理交易的发起方账户;获取发起方账户对应的分片信息,将区块链系统的原链作为主链;以及,依据分片信息引入一与主链并行的分片;将发起方账户的部分或全部待处理交易交由发起方账户对应的分片进行处理;其中,若待处理交易为智能合约类交易,则发起方账户为待处理交易的智能合约创建人账户。通过这种方式,智能合约类交易按照智能合约创建人账户进行分片的划分,能够尽可能地避免交易跨分片处理的情况,不仅保证了交易的处理效率较高,而且保证了区块链系统内资源的高利用率。
进一步的技术方案是,所述主链以及至少一与所述主链并行的分片具体形式如下::获取待处理交易中智能合约的调用关系;获取调用关系对应的分片信息,将区块链系统的原链作为主链;以及,依据分片信息引入一与主链并行的分片,并将待处理交易交由分片进行处理。通过这种方式,尽可能地将涉及到智能合约调用的交易放在一个分片内进行处理,不仅保证了交易的处理效率较高,而且保证了区块链系统内资源的高利用率。
进一步的技术方案是,所述主链以及至少一与所述主链并行的分片具体形式如下::获取待处理交易中分散式应用程序DAPP(Decentralized Application,简称“DAPP”)的族群;获取族群对应的分片信息,将区块链系统的原链作为主链;以及,依据分片信息引入一与主链并行的分片,并将待处理交易交由分片进行处理。通过这种方式,对DAPP进行族群的划分,尽可能地将一个DAPP及其相关的交易放在一个分片内进行处理,不仅保证了交易的处理效率较高,而且保证了区块链系统内资源的高利用率。
进一步的技术方案是,所述主链以及至少一与所述主链并行的分片具体形式如下::获取待处理交易的发起方账户;获取发起方账户所属群体对应的分片信息,将区块链系统的原链作为主链;以及,依据分片信息引入一与主链并行的分片;将发起方账户的部分或全部待处理交易交由发起方账户对应的分片进行处理;其中,发起方账户所属群体根据发起方账户与其他账户的耦合度生成。这样,为区块链系统能够对历史处理的交易进行分析,以实现后续分片的智能划分提供了可能,从而能够尽可能减少交易跨分片的情况,保证了区块链系统内资源的高利用率。
采用上述本发明实施例提供的技术方案,具有以下有益效果:
1.在主链的基础上支出多分片扩展,可大幅提升区块链平台性能,明显提升对商业应用需求的支持。
2.分片和主链的同步机制,有效保障数据的一致性,保证链上业务处理的可靠性;
3.根据交易量弹性支持分片扩展和收缩,有效平衡性能扩展和资源优化。
4.支持跨分片交易和跨分片合约,增强区块链的扩展性,可实现纷繁多样的商业场景DAPP。
附图说明
此处所说明的附图用来提供对本发明实施例的进一步理解,构成本发明的一部分,本发明示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是本发明实施例一中区块链交易处理方法的流程图;
图2是本发明实施例二中区块链交易处理方法的流程图。
具体实施方式
为使本发明实施方式的目的、技术方案和优点更加清楚,下面将结合附图对本发明的各实施方式进行详细的阐述。然而,本领域的普通技术人员可以理解,在本发明各实施方式中,为了使读者更好地理解本申请而提出了许多技术细节。但是,即使没有这些技术细节和基于以下各实施方式的种种变化和修改,也可以实现本申请所要求保护的技术方案。
实施例一:
本发明的实施例一涉及一种区块链交易处理方法,具体流程如图1所示。本实施方式中的交易处理方法应用于包括主链以及至少一个分片的区块链系统。其中,主链与分片的共识算法相同,只是每个分片种子与主链种子不同。
具体地说,包括主链以及至少一个分片的区块链系统的形成方式可以为:
(一)区块链系统根据待处理交易的发起方账户,获取发起方账户对应的分片信息,将区块链系统的原链作为主链;以及,依据分片信息引入一与主链并行的分片。并且,区块链系统将发起方账户的部分或全部待处理交易交由发起方账户对应的分片进行处理。其中,若待处理交易为智能合约类交易,则发起方账户为待处理交易的智能合约创建人账户。
具体地说,区块链系统的共识算法中可以预存有发起方账户与分片的对应关系,以便于区块链系统根据交易的发起方账户,引入对应的分片,将交易分配到对应的分片进行处理,实现区块链系统的并行处理能力。
更具体地说,主链在将发起方账户的部分或全部待处理交易交由对应的分片进行处理时,主链会对待处理交易的交易类型进行检测,若待处理交易的交易类型为转账类交易或智能合约类的交易,则主链会将待处理交易交由对应的分片进行处理。若待处理交易的交易类型为治理类交易(如,记账申请、代表投票等),则此交易还由主链进行处理,以保障整个区块链系统的安全性。
(二)区块链系统获取待处理交易中智能合约的调用关系,获取调用关系对应的分片信息,将区块链系统的原链作为主链;以及,依据分片信息引入一与主链并行的分片,并将待处理交易交由分片进行处理。
具体地说,区块链系统的共识算法中可以预存有智能合约的调用关系与分片的对应关系,以便于区块链系统根据智能合约的调用关系,引入对应的分片,并将交易分配到对应的分片进行处理,实现区块链系统的并行处理能力。
更具体地说,当待处理交易中存在智能合约的调用关系时,很可能出现交易跨分片处理的情况,因此本实施方式中依据智能合约的调用关系,将存在调用关系的各智能合约对应同一个分片,从而尽可能地令智能合约的调用在一个分片中进行,以避免交易跨分片处理的情况,不仅保证了交易的处理效率较高,而且保证了区块链系统内资源的高利用率。
(三)区块链系统获取待处理交易中DAPP的族群;获取族群对应的分片信息,将区块链系统的原链作为主链;以及,依据分片信息引入一与主链并行的分片,并将待处理交易交由分片进行处理。
具体地说,DAPP的族群可以由技术人员在发起待处理交易时指定,也就是说,待处理交易中直接携带有DAPP的族群的相关信息,这样,区块链系统的共识算法中可以预存有DAPP的族群与分片的对应关系,以便于区块链系统根据待处理交易中DAPP的族群,引入对应的分片,并将交易分配到对应的分片进行处理,实现区块链系统的并行处理能力。
更具体地说,区块链系统的共识算法中也可以既预存有DAPP的族群与分片的对应关系,又预存有DAPP与族群的对应关系。这样,技术人员直接发起待处理交易即可,无需指定DAPP的族群,区块链系统能够自行实现DAPP族群的识别,并根据自动识别出的DAPP的族群,引入对应的分片,并将交易分配到对应的分片进行处理,实现区块链系统的并行处理能力。
需要注意的是,当待处理交易与DAPP相关时,很可能出现交易跨分片处理的情况,因此本实施方式中对DAPP进行族群的划分,将相互关联的各DAPP(各DAPP间存在信息交互)对应在一个分片中,从而能够尽可能地将涉及到DAPP的待处理交易放在一个分片内进行处理,以避免交易跨分片处理的情况,不仅保证了交易的处理效率较高,而且保证了区块链系统内资源的高利用率。
(四)区块链系统获取待处理交易的发起方账户,获取发起方账户所属群体对应的分片信息,将区块链系统的原链作为主链;以及,依据分片信息引入一与主链并行的分片。并且,区块链系统将发起方账户的部分或全部待处理交易交由发起方账户对应的分片进行处理。其中,发起方账户所属群体根据发起方账户与其他账户的耦合度生成。
具体地说,发起方账户与其他账户的耦合度是指发起方账户与其他账户之间交易依赖的程度,可以由区块链系统根据历史处理的跨分片交易统计获得。这样,区块链系统将耦合度较高的几个账户划分到一个群体,实现耦合度较高的几个账户对应同一个分片,能降低后续分片,分片进行处理交易时交易跨分片处理的可能性,实现了区块链系统上分片规则的动态生成与调节,能够令区块链系统分片划分的智能程度逐步提高,保证区块链系统内资源的高利用率提供了基础。如,以A、B、C、D四个账号为例,如果A和B的耦合度较高,大于预设耦合度,且B和C的耦合度较高,大于预设耦合度,则可以将A、B、C划分在同一群体。然而,上述举例仅作为示例性说明,任何根据耦合度进行群体的划分的实现形式均在本实施方式的保护范围内。
值得一提的是,上述(一)、(二)、(三)、(四)举例的区块链系统的形成方式中,还可以设定分片条件。如,区块链系统的系统压力较大的情况下才进行分片,而区块链系统检测系统压力是否较大方式可以为:区块链系统检测是否连续生成指定个数的满区块。其中,指定个数可以由预存在区块链系统的共识算法中。也就是说,区块链系统若连续生成指定个数的满区块,则说明区块链系统的交易较多,区块链系统处于满负荷状态,此时可以认定区块链系统的系统压力较大。然而,上述通过检查连续生成的满区块的个数的方式进行系统压力的判断仅作为示例性说明,这一示例性说明并不构成对本实施方式的限定。
上述(一)、(二)、(三)、(四)举例的区块链系统的形成方式仅作为示例性说明,在实际使用时,任何能够实现区块链系统包括主链以及至少一个分片的形成方式,均可以应用在本实施方式中。并且,上述(一)、(二)、(三)、(四)既可以在区块链系统中单独实现,也可以并存,在上述(一)、(二)、(三)、(四)分片规则并存在区块链系统时,可以通过设置优先级的方式避免分片冲突,如,(四)的优先级大于(三)的优先级,(三)的优先级大于(二)的优先级,(一)的优先级最低。或者,可以先设置(三)的优先级最高,(一)的优先级最低,在几轮分片与主链汇合后,设置(四)的优先级大于(三)的优先级。
以下对本实施方式中区块链交易处理方法的具体实现进行说明,包括如下步骤:
步骤101,主链定期获取到分片最新生成的区块的哈希值时,将哈希值记录在主链最新生成的区块中。
具体地说,引入与主链并行的分片后,分片与主链均会定期产生区块,因而可以设置分片新生成的区块高度到达第一预设高度时,停止生成新区块,主链在检测到分片停止生成新区块时,获取分片最新生成的区块的哈希值。其中,第一预设高度可以预存在共识算法中,如,第一预设高度可以为100。也就是说,分片在新生成的区块到达100块时,分片停止生成新区块。其中,分片停止生成区块的方式可以为,分片种子置空。
更具体地说,也可以设置分片处理的跨分片交易数量到达预设阈值时,停止生成新区块,能够避免分片处理的跨分片交易过多,导致分片处理效率下降的情况,有效地保证了整个区块链系统的高处理效率。其中,第一阈预设阈值也可以预存在共识算法中。
本实施方式中,主链在检测到分片停止生成新区块时,才获取分片最新生成的区块的哈希值进行记录,能够避免主链所定位的最新生成的区块出现偏差,有效地保证了主链与分片的一致性。如,分片新生成了100块区块,则主链获取第100个区块的哈希值进行记录。
步骤102,主链检查分片的交易总量。
具体地说,分片每生成一个区块,主链便会进行一次交易总量的计算,将新生成的区块所记载的交易量加入当前所统计的交易总量的数额中,进行交易总量的不断更新。也就是说,交易总量等于其中,i为正整数,n表示第n个区块,X表示第n个区块所记载的交易量。
步骤103,主链判断交易总量是否小于或等于预设数量。若是,则进行步骤104,否则进行步骤105。
具体地说,预设数量可以预存在共识算法中。本实施方式中,主链通过判断交易总量是否小于或等于预设数量的方式,来衡量后续是否需要引入该分片辅助处理待处理交易。若交易总量小于或等于预设数量,则认为分片上没有交易或交易量比较小,则执行步骤104,主链获取分片的各待处理交易,并处理各待处理交易,即,将分片取消。若交易总量大于预设数量,则认为分片上交易量较大,则执行步骤105以及步骤106。即,再次引入分片进行辅助处理,并实现分片与主链的一致,有效地保证了整个区块链系统稳定、健康的运行。
步骤105,分片根据主链上记录的各跨分片交易凭据,获取分片未处理的跨分片交易凭据。
步骤106,分片根据跨分片交易凭据生成待处理交易,并完成待处理交易。
更具体地说,分片在每处理完一笔跨分片交易时,均会生成一个交易凭据,并且分片会广播该交易凭据,以便于相关分片以及主链进行相应的变更,实现该跨分片交易在分片与主链上的一致。同时,分片会在主链上进行一个记录,即,在主链上进行跨分片交易凭据的记录。需要注意的是,在实际操作时,主链上记录的跨分片交易凭据也可以以一个网址链接的形式存在,以便于其他分片根据网址链接,获取到跨分片交易凭据,并基于跨分片交易凭据,进行相应的信息变更。如,假设跨分片交易为跨分片转账,则大致的操作流程为:交易在其发起方账户所对应的分片中处理,分片变更发起方余额,生成账户变更凭据,分片广播账户变更凭据,并在主链上记录账户变更凭据的记录,其他分片在收到分片广播的账户变更凭据,或者,在“汇合”到主链后,进行发起人账户的账户余额的变更。
本实施方式中,若跨分片交易为DAPP跨分片调用,则分片采用分布异步调用的方式进行处理。也就是说,分片在完成自身对该跨分片交易的相应处理操作后,暂时将该跨分片交易搁置、等待反馈,并且分片处理下一个待处理交易,这样,有效地保证了分片的高处理效率。
不难看出,本实施方式的核心在于步骤101,通过主链定期获取到分片最新生成的区块的哈希值时,将哈希值记录在主链最新生成的区块中,实现主链与分片的定期“汇合”,从而实现了主链与分片的一致性,保证了区块链系统的可靠性。并且,在本实施方式的步骤102至步骤106中,引入了主链对是否需要再次引入分片的判断,实现了区块链系统上分片的动态负载均衡,为提升区块链系统的资源有效利用率提供了基础。也就是说,步骤103判断结果为否后,相当于分片被重新引入,此时分片需要优先执行步骤105、步骤106,以保证分片与主链的一致性。并且,分片被重新引入后,依然会继续步骤101至步骤103,相当于一个新的循环,以此反复,直至区块链系统的系统压力较低。
实施例二
本发明的实施例二涉及一种区块链交易处理方法,具体流程如图2所示。实施例二在实施例一的基础上加以改进,主要改进之处在于:在本发明实施例二中,主链与分片未能正常“汇合”后,主链会停止生成新区块以等待分片的汇入,有效地保证了整个区块链系统的稳定性,以下进行具体说明:
本实施方式中的步骤201至步骤206与实施例一中的步骤101至步骤106大致相同,为减少重复,在此不再赘述,以下仅对不同部分进行说明:
步骤207,主链新生成的区块高度到达第二预设高度,且主链未获取到分片最新生成的区块的哈希值,主链停止生成新区块。
具体地说,第二预设高度可以预存在共识算法中。其中,主链种子置空,实现主链停止生成区块。这样,主链停止生成新区块,以等待分片的“汇入”,从而能够避免分片所导致的区块链系统分叉的问题,保证了区块链系统的稳定性。
更具体地说,若区块链系统采取分片在新生成的区块高度到达第一预设高度时,停止生成新区块,主链在检测到所述分片停止生成新区块时,获取分片最新生成的区块的哈希值的方式,则可以设置第二预设高度大于第一预设高度,如,第二预设高度可以为第一预设高度的两倍或三倍,从而能够实现一定时长后主链与分片的强制“汇合”。
与第一实施方式相比,本实施方式中的区块链系统稳定性更好。
上面各种方法的步骤划分,只是为了描述清楚,实现时可以合并为一个步骤或者对某些步骤进行拆分,分解为多个步骤,只要包括相同的逻辑关系,都在本专利的保护范围内;对算法中或者流程中添加无关紧要的修改或者引入无关紧要的设计,但不改变其算法和流程的核心设计都在该专利的保护范围内。
实施例三
本实施例提供的系统可以执行任意本发明任意实施例所提供的一种区块链交易处理方法,具备执行该方法相应的功能模块和有益效果。该系统包括主链以及至少一与所述主链并行的分片;
所述主链定期获取到分片最新生成的区块的哈希值时,将哈希值记录在主链最新生成的区块中;
主链检查分片的交易总量,判断交易总量是否小于或等于预设数量,若是,主链获取分片的各待处理交易,并处理各待处理交易;否则,分片根据主链上记录的各跨分片交易凭证,获取分片未处理的跨分片交易凭证,根据跨分片交易凭证生成待处理交易,并完成待处理交易。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
本领域的普通技术人员可以理解,上述各实施方式是实现本发明的具体实施方式,而在实际应用中,可以在形式上和细节上对其作各种改变,而不偏离本发明的精神和范围。
Claims (10)
1.一种区块链交易处理方法,其特征在于,该方法应用于区块链系统,所述区块链系统包括主链以及至少一与所述主链并行的分片;该方法包括:
主链定期获取到分片最新生成的区块的哈希值时,将哈希值记录在主链最新生成的区块中;
主链检查分片的交易总量,判断交易总量是否小于或等于预设数量,若是,主链获取分片的各待处理交易,并处理各待处理交易;否则,分片根据主链上记录的各跨分片交易凭证,获取分片未处理的跨分片交易凭证,根据跨分片交易凭证生成待处理交易,并完成待处理交易。
2.根据权利要求1所述的区块链交易处理方法,其特征在于,所述主链定期获取到所述分片最新生成的区块的哈希值,具体包括:
所述分片在新生成的区块高度到达第一预设高度时,停止生成新区块;或者,所述分片在处理的跨分片交易数量到达预设阈值时,停止生成新区块;
所述主链在检测到所述分片停止生成新区块时,获取所述分片最新生成的区块的哈希值。
3.根据权利要求1或2所述的区块链交易处理方法,其特征在于,还包括:
若所述主链新生成的区块高度达第二预设高度,且所述主链未获取到所述分片最新生成的区块的哈希值,则所述主链停止生成新区块。
4.根据权利要求3所述的区块链交易处理方法,其特征在于,所述分片完成所述待处理交易时,所述分片生成跨分片交易凭据,广播所述跨分片交易凭据,并在所述主链上记录所述跨分片交易凭据。
5.一种区块链交易处理系统,其特征在于,包括主链以及至少一与所述主链并行的分片;
所述主链定期获取到分片最新生成的区块的哈希值时,将哈希值记录在主链最新生成的区块中;
主链检查分片的交易总量,判断交易总量是否小于或等于预设数量,若是,主链获取分片的各待处理交易,并处理各待处理交易;否则,分片根据主链上记录的各跨分片交易凭证,获取分片未处理的跨分片交易凭证,根据跨分片交易凭证生成待处理交易,并完成待处理交易。
6.根据权利要求1所述的区块链交易处理方法,其特征在于,所述主链以及至少一与所述主链并行的分片具体形式如下:
获取待处理交易的发起方账户;
获取所述发起方账户对应的分片信息,将原链作为主链;以及,依据所述分片信息引入一与所述主链并行的分片;
将所述发起方账户的部分或全部待处理交易交由所述发起方账户对应的所述分片进行处理;
其中,若所述待处理交易为智能合约类交易,则所述发起方账户为所述待处理交易的智能合约创建人账户。
7.根据权利要求6所述的区块链交易处理方法,其特征在于,所述将所述发起方账户的部分或全部待处理交易交由所述发起方账户对应的所述分片系统进行处理,具体包括:
将交易类型为转账类或智能合约类的待处理交易交由所述发起方账户对应的所述分片进行处理。
8.根据权利要求6所述的区块链交易处理方法,其特征在于,所述主链以及至少一与所述主链并行的分片具体形式如下:
获取待处理交易中智能合约的调用关系;
获取所述调用关系对应的分片信息,将原链作为主链;以及,依据所述分片信息引入一与所述主链并行的分片,并将所述待处理交易交由所述分片进行处理。
9.根据权利要求6所述的区块链交易处理方法,其特征在于,所述主链以及至少一与所述主链并行的分片具体形式如下:
获取待处理交易中分散式应用程序DAPP的族群;
获取所述族群对应的分片信息,将原链作为主链;以及,依据所述分片信息引入一与所述主链并行的分片,并将所述待处理交易交由所述分片进行处理。
10.根据权利要求6所述的区块链交易处理方法,其特征在于,所述主链以及至少一与所述主链并行的分片具体形式如下:
获取待处理交易的发起方账户;
获取所述发起方账户所属群体对应的分片信息,将原链作为所述主链;以及,依据所述分片信息引入一与所述主链并行的分片;
将所述发起方账户的部分或全部待处理交易交由所述发起方账户对应的所述分片进行处理;
其中,所述发起方账户所属群体根据所述发起方账户与其他账户的耦合度生成。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010202525.9A CN111445329A (zh) | 2020-03-20 | 2020-03-20 | 一种区块链交易处理方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010202525.9A CN111445329A (zh) | 2020-03-20 | 2020-03-20 | 一种区块链交易处理方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111445329A true CN111445329A (zh) | 2020-07-24 |
Family
ID=71653686
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010202525.9A Pending CN111445329A (zh) | 2020-03-20 | 2020-03-20 | 一种区块链交易处理方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111445329A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112261156A (zh) * | 2020-12-21 | 2021-01-22 | 支付宝(杭州)信息技术有限公司 | 一种提交跨片事务的方法及系统、主链节点和源分片节点 |
CN112866025A (zh) * | 2021-01-14 | 2021-05-28 | 公安部第三研究所 | 一种智能合约的分片处理方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108846659A (zh) * | 2018-06-13 | 2018-11-20 | 深圳前海微众银行股份有限公司 | 基于区块链的转账方法、装置及存储介质 |
CN109508968A (zh) * | 2018-10-25 | 2019-03-22 | 常州唯康信息科技有限公司 | 区块链系统以及其控制方法 |
CN109934592A (zh) * | 2019-03-22 | 2019-06-25 | 深圳市网心科技有限公司 | 一种区块链跨链通信方法、系统、电子设备及存储介质 |
CN110084601A (zh) * | 2019-04-30 | 2019-08-02 | 杭州复杂美科技有限公司 | 平行链主链交易状态同步方法、设备和存储介质 |
-
2020
- 2020-03-20 CN CN202010202525.9A patent/CN111445329A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108846659A (zh) * | 2018-06-13 | 2018-11-20 | 深圳前海微众银行股份有限公司 | 基于区块链的转账方法、装置及存储介质 |
CN109508968A (zh) * | 2018-10-25 | 2019-03-22 | 常州唯康信息科技有限公司 | 区块链系统以及其控制方法 |
CN109934592A (zh) * | 2019-03-22 | 2019-06-25 | 深圳市网心科技有限公司 | 一种区块链跨链通信方法、系统、电子设备及存储介质 |
CN110084601A (zh) * | 2019-04-30 | 2019-08-02 | 杭州复杂美科技有限公司 | 平行链主链交易状态同步方法、设备和存储介质 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112261156A (zh) * | 2020-12-21 | 2021-01-22 | 支付宝(杭州)信息技术有限公司 | 一种提交跨片事务的方法及系统、主链节点和源分片节点 |
CN112866025A (zh) * | 2021-01-14 | 2021-05-28 | 公安部第三研究所 | 一种智能合约的分片处理方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109508968B (zh) | 区块链系统以及其控制方法 | |
CN112511590B (zh) | 一种区块链分片的高效存储重配置方法 | |
US10986177B2 (en) | Systems and methods of self-forking blockchain protocol | |
CN109194584B (zh) | 一种流量监控方法、装置、计算机设备及存储介质 | |
CN110503558B (zh) | 一种基于区块链系统的处理方法及装置 | |
CN107329837B (zh) | 一种负载均衡的方法和单元、分布式NewSQL数据库系统 | |
US20230109969A1 (en) | Data processing method and apparatus based on node internal memory, device and medium | |
CN108776897B (zh) | 数据处理方法、装置、服务器及计算机可读存储介质 | |
CN111445329A (zh) | 一种区块链交易处理方法及系统 | |
CN107358524B (zh) | 一种同种货币下多个账户管理行间资金平账的方法 | |
Xin et al. | On scaling and accelerating decentralized private blockchains | |
CN110008206B (zh) | 一种基于区块链系统的数据处理方法及装置 | |
CN113568974B (zh) | 基于区块链系统的分片共识方法、设备以及可读存储介质 | |
CN112866136A (zh) | 业务数据处理方法和装置 | |
CN113655969A (zh) | 一种基于流式分布式存储系统的数据均衡存储方法 | |
CN112118138B (zh) | 区块链共识机制实现系统和方法 | |
CN113157457A (zh) | 区块链分片负载均衡方法及装置 | |
CN108549592A (zh) | 一种数据库连接池的监控方法及监控设备、应用服务器 | |
CN114490020A (zh) | 一种区块链分片方法、系统及电子设备 | |
CN110619020B (zh) | 一种基于机器学习的区块链分片方法 | |
CN112866025B (zh) | 一种智能合约的分片处理方法 | |
CN116707759B (zh) | 一种面向数据流通高并发场景的轻量级联盟链共识方法 | |
CN107888635A (zh) | 用于实现移动边缘存储的方法和装置 | |
CN112801791A (zh) | 一种基于授权的区块链共识方法及系统 | |
CN113269543A (zh) | 一种用于区块链的多层混合交易扩容系统及方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20210913 Address after: Room 1125a, No. 55, Xili Road, China (Shanghai) pilot Free Trade Zone, Pudong New Area, Shanghai 200120 Applicant after: Shanghai Jinqiu Information Technology Co.,Ltd. Address before: 510700 Room 203, building A1, No. 191, Kexue Avenue, Huangpu District, Guangzhou, Guangdong Applicant before: Guangzhou Jinqiu Lianyun Technology Co.,Ltd. |
|
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |