CN112435123A - 一种基于同构多链系统的交易方法、系统及存储介质 - Google Patents

一种基于同构多链系统的交易方法、系统及存储介质 Download PDF

Info

Publication number
CN112435123A
CN112435123A CN202011337946.9A CN202011337946A CN112435123A CN 112435123 A CN112435123 A CN 112435123A CN 202011337946 A CN202011337946 A CN 202011337946A CN 112435123 A CN112435123 A CN 112435123A
Authority
CN
China
Prior art keywords
transaction
chain
subnet
transactions
actual
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
CN202011337946.9A
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.)
State Grid Energy Research Institute Co Ltd
Electric Power Research Institute of State Grid Zhejiang Electric Power Co Ltd
Original Assignee
State Grid Energy Research Institute Co Ltd
Electric Power Research Institute of State Grid Zhejiang Electric Power 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 State Grid Energy Research Institute Co Ltd, Electric Power Research Institute of State Grid Zhejiang Electric Power Co Ltd filed Critical State Grid Energy Research Institute Co Ltd
Priority to CN202011337946.9A priority Critical patent/CN112435123A/zh
Publication of CN112435123A publication Critical patent/CN112435123A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • 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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Finance (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Accounting & Taxation (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Strategic Management (AREA)
  • Technology Law (AREA)
  • General Business, Economics & Management (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明公开一种基于同构多链系统的交易方法、系统、电子设备及存储介质,涉及区块链技术领域,该方法包括以下步骤:将一笔逻辑交易划分为多笔实际交易发往至少一条子网链;查询每条子网链上待打包交易数以及各子网链上资产;根据所述待打包交易数和/或各子网链上资产将所述逻辑交易拆分为实际交易的集合以均衡各子网链的负载,通过最大化各子网链可使用交易金额,实现整体系统的通量提升,进而整体提升区块链系统性能。

Description

一种基于同构多链系统的交易方法、系统及存储介质
技术领域
本发明涉及区块链技术领域,尤其涉及一种基于同构多链系统的交易方法、系统、电子设备及存储介质。
背景技术
区块链作为新兴技术,还有很多问题亟待完善,区块链协议在应用过程中面临着可扩展性[1]的障碍。代表性的比特币区块链以及以太坊区块链数据均已超过200GB,根据Etherscan最新统计,完整运行以太坊全部数据的“存档节点”的数据总量已超2TB。在目前的区块链共识协议中,区块链账本数据量会随时间越来越大,尤其以区块链中的公有链为代表,区块链全局账本数据需要在公有链的尽可能多的节点进行全复制存储,大大提高了系统的准入门槛,并极大程度的降低了系统可扩展性。
目前公链技术的这些特点严重制约了区块链技术在高并发、高通量业务场景的应用。
发明内容
本发明的目的在于提供一种基于同构多链系统的交易方法,能够通过最大化各子网链可使用交易金额,优先尝试待打包交易数较少的子网链等方式实现动态分片下的多分片负载均衡,实现整体系统的通量提升,进而整体提升区块链系统性能。
第一方面,本发明实施例提供了一种基于同构多链系统的交易方法,包括以下步骤:
将一笔逻辑交易划分为多笔实际交易发往至少一条子网链;
查询每条子网链上待打包交易数以及各子网链上资产;
根据所述待打包交易数和/或各子网链上资产将所述逻辑交易拆分为实际交易的集合以均衡各子网链的负载。
可选地,根据所述各子网链上资产将所述逻辑交易拆分为实际交易的集合以均衡各子网链的负载包括:
判断在所有子网链上资产是否满足
Figure BDA0002797805690000021
Figure BDA0002797805690000022
说明总资产不足以进行这笔交易,交易失败;
设上一次拆分使用的最后一条子网链为Cflag,若为第一次拆分,flag=0,从Cflag的下一条链开始逐条链检查每条链上的资产Vi,若Vi=0,跳过Ci,若Vi≥V,将在Ci上执行的交易金额为V的实际交易加入实际交易的集合,记录flag=i;否则将一笔在Ci上执行的交易金额为Vi的实际交易加入实际交易的集合,并将V减去Vi;
返回实际交易的集合;
式中,V为交易数目,m为子网链数量,Vi为在第i条子网链上的资产,i∈[0,m)。
可选地,根据所述待打包交易数和各子网链上资产将所述逻辑交易拆分为实际交易的集合以均衡各子网链的负载包括:
判断在所有子网链上资产是否满足
Figure BDA0002797805690000023
Figure BDA0002797805690000024
说明总资产不足以进行这笔交易,交易失败;
从所述待打包交易数最小的链开始按所述待打包交易数从小到大的顺序逐条链检查每条链上的资产Vi,若Vi==0,跳过Ci,若Vi≥V,将在Ci上执行的转账金额为V的实际交易加入实际交易的集合;否则将在Ci上执行的转账金额为Vi的实际交易加入实际交易的集合,并将V减去Vi;
返回实际交易的集合;
式中,V为交易数目,m为子网链数量,Vi为在第i条子网链上的资产,i∈[0,m)。
进一步地,所述交易方法还包括:
为所述逻辑交易生成一个秘密值,并将所述秘密值和所述实际交易的集合中的交易发送至各子网链;
监听本次转账交易有关的各子网链上资产是否成功锁定,锁定状态下通过所述秘密值从各子网链上取回锁定的资产。
第二方面,本发明实施例提供了基于同构多链系统的交易系统,所述交易系统包括:
区块链平台,所述区块链平台包括同构多链系统,所述同构多链系统具有多条具有相同区块链架构的子网链;
查询模块;用于查询每条子网链上待打包交易数以及各子网链上资产;
均衡负载模块;用于根据所述待打包交易数和/或各子网链上资产将所述逻辑交易拆分为实际交易的集合以均衡各子网链的负载。
其中,所述均衡负载模块包括:
判断单元,判断在所有子网链上资产是否满足
Figure BDA0002797805690000031
Figure BDA0002797805690000032
说明总资产不足以进行这笔交易,交易失败;
第一计算单元,设上一次拆分使用的最后一条子网链为Cflag,若为第一次拆分,flag=0,从Cflag的下一条链开始逐条链检查每条链上的资产Vi,若Vi=0,跳过Ci,若Vi≥V,将在Ci上执行的交易金额为V的实际交易加入实际交易的集合,记录flag=i;否则将一笔在Ci上执行的交易金额为Vi的实际交易加入实际交易的集合,并将V减去Vi;
返回单元,用于返回实际交易的集合;
式中,V为交易数目,m为子网链数量,Vi为在第i条子网链上的资产,i∈[0,m)。
可选地,所述均衡负载模块包括:
判断单元,判断在所有子网链上资产是否满足
Figure BDA0002797805690000033
Figure BDA0002797805690000034
说明总资产不足以进行这笔交易,交易失败;
第二计算单元,从所述待打包交易数最小的链开始按所述待打包交易数从小到大的顺序逐条链检查每条链上的资产Vi,若Vi==0,跳过Ci,若Vi≥V,将在Ci上执行的转账金额为V的实际交易加入实际交易的集合;否则将在Ci上执行的转账金额为Vi的实际交易加入实际交易的集合,并将V减去Vi;
返回单元,用于返回实际交易的集合;
式中,V为交易数目,m为子网链数量,Vi为在第i条子网链上的资产,i∈[0,m)。
进一步地,所述交易系统还包括:
第一客户端,为所述逻辑交易生成一个秘密值,并将所述秘密值和所述实际交易的集合中的交易发送至各子网链;
第二客户端,所述第一客户端监听本次转账交易有关的各子网链上资产是否成功锁定,锁定状态下所述第二客户端通过所述秘密值从各子网链上取回锁定的资产。
第三方面,本发明提供了一种电子设备,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器通过运行所述可执行指令以实现上述的方法。
第四方面,本发明提供了一种计算机可读存储介质,其上存储有计算机指令,该指令被处理器执行时实现上述方法的步骤。
有益效果
本发明提出了一种基于同构多链系统的交易方法,通过将一笔逻辑交易划分为多笔实际交易发往至少一条子网链;查询每条子网链上待打包交易数以及各子网链上资产;根据所述待打包交易数和/或各子网链上资产将所述逻辑交易拆分为实际交易的集合以均衡各子网链的负载,通过最大化各子网链可使用交易金额,实现整体系统的通量提升,进而整体提升区块链系统性能。
附图说明
图1为本发明实施例的一种基于同构多链系统的交易方法的流程图;
图2为本发明另一种实施例的一种基于同构多链系统的交易方法的流程图;
图3为本发明实施例的一种基于同构多链系统的交易系统的结构框图;
图4为图3中均衡负载模块一种实施例的结构框图;
图5图3中均衡负载模块另一种实施例的结构框图;
图6为本发明实施例的一种电子设备的结构框图。
具体实施方式
下面将结合实施例对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
术语"第一"、"第二"仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有"第一"、"第二"的特征可以明示或者隐含地包括一个或者更多个所述特征。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
下面结合附图说明和具体实施例对本发明作进一步描述:
本发明的目的在于提供一种基于同构多链系统的交易方法,能够通过最大化各子网链可使用交易金额,优先尝试待打包交易数较少的子网链等方式实现动态分片下的多分片负载均衡,实现整体系统的通量提升,进而整体提升区块链系统性能。
相关技术中,在同构多链系统中,用户发起的一笔逻辑交易事务(简称逻辑交易)在执行时需要被拆分为一笔或多笔实际交易事务(简称实际交易)发往一条或多条子网链执行,这些实际交易的金额之和与逻辑交易相等。
因此,动态分片策略通量提升效果与各分片负载、账户资金分布等因素紧密相关,为解决区块链基础架构和核心协议面临的通量优化及扩展性受限的问题,提出了同构多链的并行化区块链架构。在同构多链系统中,用户的资产分布在多条子网链上,用户通过客户端向多条同构链提交事务。用户提交的事务被称为逻辑事务,系统将逻辑事务按用户在各链上的资产等因素拆分为一系列可以并行执行的实际事务在各个子网链上执行,并保证逻辑事务的原子性。
图1示出了本发明实施例的一种基于同构多链系统的交易方法的流程图;如图1所示,所述基于同构多链系统的交易方法包括以下步骤:
S20、将一笔逻辑交易划分为多笔实际交易发往至少一条子网链;
S40、查询每条子网链上待打包交易数以及各子网链上资产;
S60、根据所述待打包交易数和/或各子网链上资产将所述逻辑交易拆分为实际交易的集合以均衡各子网链的负载。
本发明提出了一种基于同构多链系统的交易方法,通过将一笔逻辑交易划分为多笔实际交易发往至少一条子网链;查询每条子网链上待打包交易数以及各子网链上资产;根据所述待打包交易数和/或各子网链上资产将所述逻辑交易拆分为实际交易的集合以均衡各子网链的负载,通过最大化各子网链可使用交易金额,实现整体系统的通量提升,进而整体提升区块链系统性能。
具体地,根据所述各子网链上资产将所述逻辑交易拆分为实际交易的集合以均衡各子网链的负载包括:
S601、判断在所有子网链上资产是否满足
Figure BDA0002797805690000061
Figure BDA0002797805690000062
说明总资产不足以进行这笔交易,交易失败;
S602、设上一次拆分使用的最后一条子网链为Cflag,若为第一次拆分,flag=0,从Cflag的下一条链开始逐条链检查每条链上的资产Vi,若Vi=0,跳过Ci,若Vi≥V,将在Ci上执行的交易金额为V的实际交易加入实际交易的集合,记录flag=i;否则将一笔在Ci上执行的交易金额为Vi的实际交易加入实际交易的集合,并将V减去Vi;
S603、返回实际交易的集合;
式中,V为交易数目,m为子网链数量,Vi为在第i条子网链上的资产,i∈[0,m)。
在同构多链系统中,在单向多链转账过程中,将用户发起的一笔逻辑交易(A向B转账)划分为多笔实际交易(A在多条链上的账户发起多笔相应转账业务)。通过轮流选择子网链的方式构造实际交易,有利于提高同构多链系统整体性能。
具体地,根据所述待打包交易数和各子网链上资产将所述逻辑交易拆分为实际交易的集合以均衡各子网链的负载包括:
S601’、判断在所有子网链上资产是否满足
Figure BDA0002797805690000071
Figure BDA0002797805690000072
说明总资产不足以进行这笔交易,交易失败;
S602’从所述待打包交易数最小的链开始按所述待打包交易数从小到大的顺序逐条链检查每条链上的资产Vi,若Vi==0,跳过Ci,若Vi≥V,将在Ci上执行的转账金额为V的实际交易加入实际交易的集合;否则将在Ci上执行的转账金额为Vi的实际交易加入实际交易的集合,并将V减去Vi;
S603’返回实际交易的集合;
式中,V为交易数目,m为子网链数量,Vi为在第i条子网链上的资产,i∈[0,m)。
在同构多链系统中,负载均衡模块,负责在单向多链转账过程中,将用户发起的一笔逻辑交易(A向B转账)划分为多笔实际交易(A在多条链上的账户发起多笔相应转账业务)。通过优先选择交易池内待打包交易数少的子网链的方式构造实际交易,有利于提高同构多链系统整体性能。
下面以较优的实施方式对本发明的有益效果进行说明:
实施例一:
将一笔逻辑交易划分为多笔实际交易发往至少一条子网链;查询每条子网链上资产;假定由用户A向用户B进行逻辑转账交易,转账数目为V,共有m条子网链,用户A在第i条子网链Ci上的资产为Vi,i∈[0,m),设最终拆分出的实际交易集合为realTx。
(1)首先判断A在所有子网链上资产是否满足
Figure BDA0002797805690000081
Figure BDA0002797805690000082
说明A的总资产不足以进行这笔交易,交易失败。
(2)拆分交易
设上一次拆分使用的最后一条子网链为Cflag,若为第一次拆分,flag=0。
从Cflag的下一条链开始逐条链检查每条链上的资产Vi,若Vi==0,跳过Ci,若Vi≥V,将一笔在Ci上执行的A向B转账金额为V的实际交易加入realTx,记录flag=i;否则将一笔在Ci上执行的A向B转账金额为Vi的实际交易加入realTx并将V减去Vi。
(3)返回实际交易集合realTx。
本实施例,通过轮流选择子网链的方式构造实际交易,实现较为简单;实现动态分片下的多分片负载均衡,有效解决了单点过热问题。
实施例二:
将一笔逻辑交易划分为多笔实际交易发往至少一条子网链;查询每条子网链上待打包交易数以及各子网链上资产;假定由用户A向用户B进行逻辑转账交易,转账数目为V,共有m条子网链,算法开始时第i条链上待打包交易为Ni,用户A在第i条子网链Ci上的资产为Vi,i∈[0,m),设最终拆分出的实际交易集合为realTx。
(1)判断A在所有子网链上资产是否满足
Figure BDA0002797805690000083
Figure BDA0002797805690000084
说明A的总资产不足以进行这笔交易,交易失败。
(2)拆分交易:
从Ni最小的链开始按Ni从小到大的顺序逐条链检查每条链上的资产Vi,若Vi==0,跳过Ci,若Vi≥V,将一笔在Ci上执行的A向B转账金额为V的实际交易加入realTx;否则将一笔在Ci上执行的A向B转账金额为Vi的实际交易加入realTx并将V减去Vi。
(3)返回实际交易集合realTx。
本实施例,通过优先选择交易池内待打包交易数少的子网链的方式构造实际交易,有利于提高同构多链系统整体性能,实现动态分片下的多分片负载均衡,有效解决了单点过热问题。
图2示出了本发明实施例的一种基于同构多链系统的交易方法的流程图作所述交易方法还包括:
S80、为所述逻辑交易生成一个秘密值,并将所述秘密值和所述实际交易的集合中的交易发送至各子网链;
S100、监听本次转账交易有关的各子网链上资产是否成功锁定,通过所述秘密值从各子网链上取回锁定的资产。
下面以较优的实施方式对本实施例的有益效果进行说明:
假定由用户A向用户B进行逻辑转账交易,转账数目为V,共有m条子网链。
用户A的客户端向同构多链系统查询每条子网链上待打包交易数以及用户A在各子网链上资产,第i条链上待打包交易数为Ni,用户A在第i条子网链上的资产为Vi,i∈[0,m)。客户端通过步骤S601-S603或步骤S601’-S603’将逻辑交易拆分为实际交易的集合realTx。客户端为本次逻辑转账交易生成一个秘密值secret,并将秘密值secret的散列和realTx中的交易发送至各子网链。
用户A的客户端监听本次转账交易有关的各子网链上的资产均成功锁定后,将secret发送至用户B的客户端,用户B的客户端使用secret从各子网链上取回A锁定的资产,本次逻辑转账交易结束。
本发明实施例,在区块链同构多链架构下,通过对区块链平台进行多链并行的架构改进,能够实现在单向多链转账场景下多笔实际交易在多链并行的处理思路。在这一应用场景中,将一笔逻辑交易根据各个子网链的实际处理水平转化为多笔实际交易进行并行化处理,在区块链基础架构和核心协议之上,解决了原有通量优化方案的瓶颈问题。
图3示出了本发明实施例的一种基于同构多链系统的交易系统的结构框图;所述交易系统包括:
区块链平台20,所述区块链平台包括同构多链系统,所述同构多链系统具有多条具有相同区块链架构的子网链;
查询模块40;用于查询每条子网链上待打包交易数以及各子网链上资产;
均衡负载模块60;用于根据所述待打包交易数和/或各子网链上资产将所述逻辑交易拆分为实际交易的集合以均衡各子网链的负载。
本发明提出了一种基于同构多链系统的交易系统,将一笔逻辑交易划分为多笔实际交易发往至少一条子网链;通过查询模块40查询每条子网链上待打包交易数以及各子网链上资产;均衡负载模块60根据所述待打包交易数和/或各子网链上资产将所述逻辑交易拆分为实际交易的集合以均衡各子网链的负载,通过最大化各子网链可使用交易金额,实现整体系统的通量提升,进而整体提升区块链系统性能。
具体地,如图4所示,所述均衡负载模块60包括:
判断单元601,判断在所有子网链上资产是否满足
Figure BDA0002797805690000101
Figure BDA0002797805690000102
说明总资产不足以进行这笔交易,交易失败;
第一计算单元602,设上一次拆分使用的最后一条子网链为Cflag,若为第一次拆分,flag=0,从Cflag的下一条链开始逐条链检查每条链上的资产Vi,若Vi=0,跳过Ci,若Vi≥V,将在Ci上执行的交易金额为V的实际交易加入实际交易的集合,记录flag=i;否则将一笔在Ci上执行的交易金额为Vi的实际交易加入实际交易的集合,并将V减去Vi;
式中,V为交易数目,m为子网链数量,Vi为在第i条子网链上的资产,i∈[0,m)。
返回单元603,用于返回实际交易的集合。
在同构多链系统中,在单向多链转账过程中,将用户发起的一笔逻辑交易(A向B转账)划分为多笔实际交易(A在多条链上的账户发起多笔相应转账业务)。通过轮流选择子网链的方式构造实际交易,有利于提高同构多链系统整体性能。
作为另一种实施方式,如图5所示,所述均衡负载模块包括:
判断单元601’,判断在所有子网链上资产是否满足
Figure BDA0002797805690000111
Figure BDA0002797805690000112
说明总资产不足以进行这笔交易,交易失败;
第二计算单元602’,从所述待打包交易数最小的链开始按所述待打包交易数从小到大的顺序逐条链检查每条链上的资产Vi,若Vi==0,跳过Ci,若Vi≥V,将在Ci上执行的转账金额为V的实际交易加入实际交易的集合;否则将在Ci上执行的转账金额为Vi的实际交易加入实际交易的集合,并将V减去Vi;
返回单元603’,用于返回实际交易的集合。
式中,V为交易数目,m为子网链数量,Vi为在第i条子网链上的资产,i∈[0,m)。
通过优先选择交易池内待打包交易数少的子网链的方式构造实际交易,有利于提高同构多链系统整体性能,实现动态分片下的多分片负载均衡,有效解决了单点过热问题。
进一步地,所述交易系统还包括:
第一客户端80,为所述逻辑交易生成一个秘密值,并将所述秘密值和所述实际交易的集合中的交易发送至各子网链;
第二客户端100,所述第一客户端监听本次转账交易有关的各子网链上资产是否成功锁定,所述第二客户端通过所述秘密值从各子网链上取回锁定的资产。
下面以较优的实施方式对本实施例的有益效果进行说明:
假定由用户A向用户B进行逻辑转账交易,转账数目为V,共有m条子网链。
所述第一客户端向同构多链系统查询每条子网链上待打包交易数以及用户A在各子网链上资产,第i条链上待打包交易数为Ni,用户A在第i条子网链上的资产为Vi,i∈[0,m)。用户A的第一客户端通过步骤S601-S603或步骤S601’-S603’将逻辑交易拆分为实际交易的集合realTx。用户A的第一客户端为本次逻辑转账交易生成一个秘密值secret,并将秘密值secret的散列和realTx中的交易发送至各子网链,用户A的第一客户端监听本次转账交易有关的各子网链上的资产均成功锁定后,将secret发送至用户B的第二客户端,用户B的第二客户端使用secret从各子网链上取回A锁定的资产,本次逻辑转账交易结束。
本发明公开的一种基于同构多链系统的交易系统,将一笔逻辑交易划分为多笔实际交易发往至少一条子网链;通过查询模块40查询每条子网链上待打包交易数以及各子网链上资产;均衡负载模块60根据所述待打包交易数和/或各子网链上资产将所述逻辑交易拆分为实际交易的集合以均衡各子网链的负载,因为不同链的处理能力,快慢的不同,被锁定需要的时间也不同。为了保证原始交易的原子性,即多笔交易要么都成功转给接收方,要么都失败,只有发送方的资产在多条链上都锁定成功时,用户A的第一客户端会与用户B的第二客户端进行通信,将第一客户端生产的秘密值通告给接收方。此时用户B的第二客户端可以将秘密值作为锁定合约的输入,用户B的第二客户端使用secret从各子网链上取回A锁定的资产,本实施例通过最大化各子网链可使用交易金额,实现整体系统的通量提升,进而整体提升区块链系统性能。
本申请实施例还提供了一种电子设备,图6示出了可以应用本申请实施例的电子设备的结构示意图,如图6所示,该计算机电子设备包括,中央处理单元(CPU)701,其可以根据存储在只读存储器(ROM)702中的程序或者从存储部分708加载到随机访问存储器(RAM)703中的程序而执行各种适当的动作和处理。在RAM 703中,还存储有系统700操作所需的各种程序和数据。CPU 701、ROM 702以及RAM 703通过总线704彼此相连。输入/输出(I/O)接口705也连接至总线704。
以下部件连接至I/O接口705:包括键盘、鼠标等的输入部分1006;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分707;包括硬盘等的存储部分708;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分709。通信部分709经由诸如因特网的网络执行通信处理。驱动器310也根据需要连接至I/O接口705。可拆卸介质711,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器710上,以便于从其上读出的计算机程序根据需要被安装入存储部分708。
附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,所述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
本申请还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中一种基于同构多链系统的交易系统中所包含的计算机可读存储介质;也可以是单独存在,未装配入电子设备中的计算机可读存储介质。计算机可读存储介质存储有一个或者一个以上程序,所述程序被一个或者一个以上的处理器用来执行描述于本申请的基于同构多链系统的交易的方法。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

Claims (10)

1.一种基于同构多链系统的交易方法,其特征在于,包括以下步骤:
将一笔逻辑交易划分为多笔实际交易发往至少一条子网链;
查询每条子网链上待打包交易数以及各子网链上资产;
根据所述待打包交易数和/或各子网链上资产将所述逻辑交易拆分为实际交易的集合以均衡各子网链的负载。
2.根据权利要求1所述的交易方法,其特征在于,根据所述各子网链上资产将所述逻辑交易拆分为实际交易的集合以均衡各子网链的负载包括:
判断在所有子网链上资产是否满足
Figure FDA0002797805680000011
Figure FDA0002797805680000012
说明总资产不足以进行这笔交易,交易失败;
设上一次拆分使用的最后一条子网链为Cflag,若为第一次拆分,flag=0,从Cflag的下一条链开始逐条链检查每条链上的资产Vi,若Vi=0,跳过Ci,若Vi≥V,将在Ci上执行的交易金额为V的实际交易加入实际交易的集合,记录flag=i;否则将一笔在Ci上执行的交易金额为Vi的实际交易加入实际交易的集合,并将V减去Vi;
返回实际交易的集合;
式中,V为交易数目,m为子网链数量,Vi为在第i条子网链上的资产,i∈[0,m)。
3.根据权利要求1所述的交易方法,其特征在于,根据所述待打包交易数和各子网链上资产将所述逻辑交易拆分为实际交易的集合以均衡各子网链的负载包括:
判断在所有子网链上资产是否满足
Figure FDA0002797805680000013
Figure FDA0002797805680000014
说明总资产不足以进行这笔交易,交易失败;
从所述待打包交易数最小的链开始按所述待打包交易数从小到大的顺序逐条链检查每条链上的资产Vi,若Vi==0,跳过Ci,若Vi≥V,将在Ci上执行的转账金额为V的实际交易加入实际交易的集合;否则将在Ci上执行的转账金额为Vi的实际交易加入实际交易的集合,并将V减去Vi;
返回实际交易的集合;
式中,V为交易数目,m为子网链数量,Vi为在第i条子网链上的资产,i∈[0,m)。
4.根据权利要求1-3任一项所述的交易方法,其特征在于,所述交易方法还包括:
为所述逻辑交易生成一个秘密值,并将所述秘密值和所述实际交易的集合中的交易发送至各子网链;
监听本次转账交易有关的各子网链上资产是否成功锁定,锁定状态下通过所述秘密值从各子网链上取回锁定的资产。
5.一种基于同构多链系统的交易系统,其特征在于,所述交易系统包括:
区块链平台,所述区块链平台包括同构多链系统,所述同构多链系统具有多条具有相同区块链架构的子网链;
查询模块;用于查询每条子网链上待打包交易数以及各子网链上资产;
均衡负载模块;用于根据所述待打包交易数和/或各子网链上资产将所述逻辑交易拆分为实际交易的集合以均衡各子网链的负载。
6.根据权利要求5所述的交易系统,其特征在于,所述均衡负载模块包括:
判断单元,判断在所有子网链上资产是否满足
Figure FDA0002797805680000021
Figure FDA0002797805680000022
说明总资产不足以进行这笔交易,交易失败;
第一计算单元,设上一次拆分使用的最后一条子网链为Cflag,若为第一次拆分,flag=0,从Cflag的下一条链开始逐条链检查每条链上的资产Vi,若Vi=0,跳过Ci,若Vi≥V,将在Ci上执行的交易金额为V的实际交易加入实际交易的集合,记录flag=i;否则将一笔在Ci上执行的交易金额为Vi的实际交易加入实际交易的集合,并将V减去Vi;
返回单元,用于返回实际交易的集合;
式中,V为交易数目,m为子网链数量,Vi为在第i条子网链上的资产,i∈[0,m)。
7.根据权利要求5所述的交易系统,其特征在于,所述均衡负载模块包括:
判断单元,判断在所有子网链上资产是否满足
Figure FDA0002797805680000031
Figure FDA0002797805680000032
说明总资产不足以进行这笔交易,交易失败;
第二计算单元,从所述待打包交易数最小的链开始按所述待打包交易数从小到大的顺序逐条链检查每条链上的资产Vi,若Vi==0,跳过Ci,若Vi≥V,将在Ci上执行的转账金额为V的实际交易加入实际交易的集合;否则将在Ci上执行的转账金额为Vi的实际交易加入实际交易的集合,并将V减去Vi;
返回单元,用于返回实际交易的集合;
式中,V为交易数目,m为子网链数量,Vi为在第i条子网链上的资产,i∈[0,m)。
8.根据权利要求5所述的交易系统,其特征在于,所述交易系统还包括:
第一客户端,为所述逻辑交易生成一个秘密值,并将所述秘密值和所述实际交易的集合中的交易发送至各子网链;
第二客户端,所述第一客户端监听本次转账交易有关的各子网链上资产是否成功锁定,锁定状态下所述第二客户端通过所述秘密值从各子网链上取回锁定的资产。
9.一种电子设备,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器通过运行所述可执行指令以实现如权利要求1-4中任一项所述的方法。
10.一种计算机可读存储介质,其上存储有计算机指令,该指令被处理器执行时实现如权利要求1-4中任一项所述方法的步骤。
CN202011337946.9A 2020-11-25 2020-11-25 一种基于同构多链系统的交易方法、系统及存储介质 Pending CN112435123A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011337946.9A CN112435123A (zh) 2020-11-25 2020-11-25 一种基于同构多链系统的交易方法、系统及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011337946.9A CN112435123A (zh) 2020-11-25 2020-11-25 一种基于同构多链系统的交易方法、系统及存储介质

Publications (1)

Publication Number Publication Date
CN112435123A true CN112435123A (zh) 2021-03-02

Family

ID=74698849

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011337946.9A Pending CN112435123A (zh) 2020-11-25 2020-11-25 一种基于同构多链系统的交易方法、系统及存储介质

Country Status (1)

Country Link
CN (1) CN112435123A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113064764A (zh) * 2021-04-19 2021-07-02 支付宝(杭州)信息技术有限公司 在区块链系统中执行区块的方法及装置
CN114710486A (zh) * 2022-03-09 2022-07-05 合肥工业大学 区块链系统中分片单点过热的监控方法及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107528886A (zh) * 2017-07-25 2017-12-29 中国科学院计算技术研究所 区块链全网拆分方法与系统
CN111046437A (zh) * 2019-10-31 2020-04-21 中国科学院计算技术研究所 基于同构多链的区块链并行事务处理方法及系统、终端
CN111144883A (zh) * 2019-12-06 2020-05-12 深圳前海微众银行股份有限公司 一种区块链网络的处理性能分析方法及装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107528886A (zh) * 2017-07-25 2017-12-29 中国科学院计算技术研究所 区块链全网拆分方法与系统
CN111046437A (zh) * 2019-10-31 2020-04-21 中国科学院计算技术研究所 基于同构多链的区块链并行事务处理方法及系统、终端
CN111144883A (zh) * 2019-12-06 2020-05-12 深圳前海微众银行股份有限公司 一种区块链网络的处理性能分析方法及装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113064764A (zh) * 2021-04-19 2021-07-02 支付宝(杭州)信息技术有限公司 在区块链系统中执行区块的方法及装置
CN113064764B (zh) * 2021-04-19 2023-10-27 支付宝(杭州)信息技术有限公司 在区块链系统中执行区块的方法及装置
CN114710486A (zh) * 2022-03-09 2022-07-05 合肥工业大学 区块链系统中分片单点过热的监控方法及系统
CN114710486B (zh) * 2022-03-09 2023-09-08 合肥工业大学 区块链系统中分片单点过热的监控方法及系统

Similar Documents

Publication Publication Date Title
US6438576B1 (en) Method and apparatus of a collaborative proxy system for distributed deployment of object rendering
US11336451B2 (en) Cross-blockchain resource transmission
KR20200100773A (ko) 분산 원장 사이에서 교차 원장 전송을 위한 방법 및 장치와 교차 원장 전송을 사용하는 시스템
CN110083745B (zh) 数据查询方法、设备和存储介质
CN109687953B (zh) 交易分类方法、设备和存储介质
CN111460504B (zh) 业务处理方法、装置、节点设备及存储介质
CN112435123A (zh) 一种基于同构多链系统的交易方法、系统及存储介质
CN111901249A (zh) 业务限流方法、装置、设备及存储介质
WO2023016426A1 (zh) 一种异步二元共识方法、装置、电子设备及存储介质
WO2022048361A1 (zh) 基于区块链的数据处理方法、装置及存储介质
CN112785408A (zh) 基于哈希的对账方法及装置
US8132177B2 (en) System and method for load-balancing in server farms
CN110490734B (zh) 交易组构建、广播方法和系统、设备及存储介质
CN112927073A (zh) 跨链数据互换方法、系统、装置、电子设备
CN111858585A (zh) 区块链策略处理装置、计算机可读存储介质及终端设备
CN113704295A (zh) 业务请求的处理方法、系统及电子设备
CN111597041A (zh) 一种分布式系统的调用方法、装置、终端设备及服务器
CN112637201B (zh) 一种web服务端的请求处理方法、装置、设备及系统
CN112491903B (zh) 多系统间对账方法、装置及系统
CN112001800B (zh) 在区块链系统中进行业务处理的方法和装置
CN113377866A (zh) 一种虚拟化数据库代理服务的负载均衡方法及装置
CN112380011A (zh) 一种服务容量的动态调整方法及装置
CN113205336B (zh) 多重签名交易方法、计算机设备和存储介质
CN113111086B (zh) 数据存储和查询响应方法、区块执行方法
CN110347480B (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