区块链系统中执行交易的方法及装置制造方法及图纸

技术编号:30830855 阅读:30 留言:0更新日期:2021-11-18 12:44
本说明书提供一种区块链系统中执行交易的方法及装置,该方法由区块链的节点执行,包括:确定接收的交易访问的各个目标参数以及所述交易对应的排序;按照所述排序在所述各个目标参数各自对应的各个排序锁队列中加入针对所述交易的目标信息;基于所述各个排序锁队列,触发所述交易对应的操作的执行;其中,所述交易对应的操作包括读和/或写操作。交易对应的操作包括读和/或写操作。交易对应的操作包括读和/或写操作。

【技术实现步骤摘要】
区块链系统中执行交易的方法及装置


[0001]本说明书一个或多个实施例涉及区块链
,特别涉及一种区块链系统中执 行交易的方法及装置。

技术介绍

[0002]区块链(Blockchain)是分布式数据存储、点对点传输、共识机制、加密算法等计 算机技术的新型应用模式。区块链是一种按照时间顺序将数据区块以顺序相连的方式 组合成的一种链式数据结构,并以密码学方式保证的不可篡改和不可伪造的分布式账 本。由于区块链具有去中心化、信息不可篡改、自治性等特性,区块链也受到人们越 来越多的重视和应用。
[0003]目前来说,在相关的技术中,区块链系统在计算和存储方面的可扩展性较弱,制 约了区块链系统的吞吐量,难以满足应用的需求。因此,需要提供一种区块链系统中 执行交易的方法。

技术实现思路

[0004]本说明书一个或多个实施例提供一种区块链系统中执行交易的方法及装置。
[0005]根据第一方面,提供一种区块链系统中执行交易的方法,由区块链的节点执行, 所述方法包括:
[0006]确定接收的交易访问的各个目标参数以及所述交易对应的排序;
[0007]按照所述排序在所述各个目标参数各自对应的各个排序锁队列中加入针对所述交 易的目标信息;
[0008]基于所述各个排序锁队列,触发所述交易对应的操作的执行;其中,所述交易对 应的操作包括读和/或写操作。
[0009]根据第二方面,提供一种区块链系统中执行交易的装置,部署于区块链的节点, 所述装置包括:
[0010]确定模块,用于确定接收的交易访问的各个目标参数以及所述交易对应的排序;
[0011]添加模块,用于按照所述排序在所述各个目标参数各自对应的各个排序锁队列中 加入针对所述交易的目标信息;
[0012]执行模块,用于基于所述各个排序锁队列,触发所述交易对应的操作的执行;其 中,所述交易对应的操作包括读和/或写操作。
[0013]根据第三方面,提供一种计算机可读存储介质,所述存储介质存储有计算机程序, 所述计算机程序被处理器执行时实现上述第一方面中任一项所述的方法。
[0014]根据第四方面,提供一种及计算设备,包括存储器、处理器及存储在存储器上并 可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述第一方面中任 一项所述的方法。
[0015]本说明书的实施例提供的技术方案可以包括以下有益效果:
[0016]本说明书的实施例提供的区块链系统中执行交易的方法和装置,基于接收的交易 访问的各个目标参数各自对应的各个排序锁队列,触发该交易对应的操作的执行。保 证了所有发送到区块链系统的交易都具有一个全局唯一的顺序,从而更有效地利用了 计算资源,提高了交易执行的效率。
[0017]应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不 能限制本申请。
附图说明
[0018]为了更清楚地说明本申请实施例的技术方案,下面将对实施例描述中所需要使用 的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例, 对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图 获得其它的附图。
[0019]图1是本说明书根据一示例性实施例示出的一种区块链系统的架构图;
[0020]图2是本说明书根据一示例性实施例示出的一种区块链系统中执行交易的方法的 流程图;
[0021]图3a是本说明书根据一示例性实施例示出的一种排序锁队列的示意图;
[0022]图3b是本说明书根据一示例性实施例示出的一种排序锁队列的示意图;
[0023]图4是本说明书根据一示例性实施例示出的另一种区块链系统中执行交易的方法 的交互流程图;
[0024]图5是本说明书根据一示例性实施例示出的一种区块链系统中执行交易的装置的 框图。
具体实施方式
[0025]这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及 附图时,除非另有表示,不同附图中相同数字表示相同或相似的要素。以下示例性实 施例中所描述的实施方式并不代表与本说明书相一致的所有实施方式。相反,它们仅 是与如所附权利要求书中所详述的、本说明书的一些方面相一致的装置和方法的例子。
[0026]在本说明书中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申 请。在本说明书和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该
”ꢀ
也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的 术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
[0027]应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但 这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如, 在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息 也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为
ꢀ“

……
时”或“当
……
时”或“响应于确定”。
[0028]如图1所示,是根据一示例性实施例示出的一种区块链系统的架构图。需要说明 的是,本说明书的实施例提供的区块链系统中执行交易的方案并不依赖于图1示出的 区块链系统架构,该方案也可应用于其它区块链系统架构中。
[0029]在图1中,区块链系统可以包括执行分片和共识分片,其中,共识分片可以包括 分片AS1,分片AS2,
……
分片ASn等n个共识分片。执行分片可以包括分片ES1, 分片ES2,
……
分片ESm等m个执行分片。不同的分片各自包括多个节点,各个节点 可以实现为任何具有计算、处理能力的装置、服务器或设备集群等。可以理解,图1 仅是示例性的示出n个共识分片和m个执行分片,实际上区块链系统中可以包括任意 数目的共识分片和执行分片。例如,共识分片的数目可以是一个也可以是多个,执行 分片的数目可以是一个也可以是多个,共识分片的数目可以和执行分片的数目相同, 也可以不同。
[0030]具体来说,首先,共识分片可以与客户端对接,从客户端接收交易,并对接收到 的交易进行共识,不同的共识分片可以接收并共识不同的交易。接着,各个共识分片 可以将各自共识得到的共识结果发送给各个执行分片的节点,共识结果可以包括待执 行的多个交易(即共识成功的多个交易)以及该多个交易的执行顺序,由执行分片的 节点完成对该多个交易的执行操作。
[0031]需要说明的是,区块链系统如果包括多个执行分片,不同的执行分片可以存储不 同账户的状态。任一执行分片的节点可以确定接收的共识结果包括的多个交易中与该 执行分片关联的第一交易,并执行该第一交易对应的操作,该操作可以包括读操作和/ 或写操作。其中,与该执行分片关联的第一交易访问的参数中包括至少一个目标参数, 该目标参数对应的本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种区块链系统中执行交易的方法,由区块链的节点执行,所述方法包括:确定接收的交易访问的各个目标参数以及所述交易对应的排序;按照所述排序在所述各个目标参数各自对应的各个排序锁队列中加入针对所述交易的目标信息;基于所述各个排序锁队列,触发所述交易对应的操作的执行;其中,所述交易对应的操作包括读和/或写操作。2.根据权利要求1所述的方法,其中,所述交易访问的目标参数包括所述交易中读取的参数和/或写入的参数。3.根据权利要求2所述的方法,其中,在任一目标参数对应的排序锁队列中加入的针对所述交易的目标信息包括所述交易的标识及该目标参数在所述交易中的读写属性。4.根据权利要求1所述的方法,其中,所述基于所述各个排序锁队列,触发所述交易对应的操作的执行,包括:基于所述各个排序锁队列中所述目标信息的位置,确定满足触发条件;在满足触发条件的情况下,触发所述交易对应的操作的执行。5.根据权利要求4所述的方法,其中,所述基于所述各个排序锁队列中所述目标信息的位置,确定满足触发条件,包括:确定所述交易访问的目标参数的个数,作为计数值的初始值;至少在确定任一排序锁队列中所述目标信息位于首位的情况下,将所述计数值减1;在所述计数值为0的情况下,确定满足触发条件。6.根据权利要求1所述的方法,其中,在所述交易对应的操作执行完成后,还包括:针对所述各个排序锁队列,执行对所述目标信息的出队列操作。7.根据权利要求1所述的方法,其中,通过如下方式按照所述排序在任一目标参数对应的排序锁队列中加入针对所述交易的目标信息:从预设列表中查找该目标参数对应的排序锁队列的目标地址;若查找到所述目标地址,基于所述目标地址在该目标参数对应的排序锁队列中按照所述排序加入针对所述交易的目标信息;若未查找到所述目标地址,创建该目标参数对应的排序锁队列,将针对所述交易的目标信息添加到新创建的排序锁队列的首位。8.根据权利要求1所述的方法,其中,所述区块链系统包括执行分片和共识分片;执行所述方法的节点为所述执行分片的节点;其中,所述方法还包括:从所述共识分片的节点接收经过共识的待执行的所述交易。9.根据权利要求8所述的方法,其中,所述区块链系统包括多个执行分片,执行所述方法的节点为所述多个执行分片中的第一执行分片的节点;其中,所述交易访问的目标参数对应的账户状态存储于所述第一执行分片中。10.一种区块链系统中执行交易的装置,部署于区块链的节点,所述装置包括:确定模块,用于确定接收的交易访问的各个目标参数以及所述交易对应的排序;添加模块,用于按照所述排序在所述各个目标参数各自对应的...

【专利技术属性】
技术研发人员:张召徐泉清戚晓冬卓海振陈之豪金澈清张辉闫莺
申请(专利权)人:蚂蚁区块链科技上海有限公司华东师范大学
类型:发明
国别省市:

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

1