[发明专利]在区块链中并发执行交易的方法和装置有效
申请号: | 202110290736.7 | 申请日: | 2020-10-28 |
公开(公告)号: | CN112991061B | 公开(公告)日: | 2023-06-09 |
发明(设计)人: | 谢桂鲁 | 申请(专利权)人: | 支付宝(杭州)信息技术有限公司 |
主分类号: | G06Q40/04 | 分类号: | G06Q40/04 |
代理公司: | 北京亿腾知识产权代理事务所(普通合伙) 11309 | 代理人: | 张静娟;周良玉 |
地址: | 310000 浙江省杭州市*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 区块 并发 执行 交易 方法 装置 | ||
本说明书实施例提供了一种在区块链中并发执行交易的方法和装置,所述方法包括:第一执行体获取当前待执行的第一交易;执行所述第一交易;将所述第一交易的执行信息存储到共享内存中;在共享内存中记录所述第一交易的处理阶段为待提交阶段;第二执行体确定当前应提交的第一交易;如果第一交易的处理阶段为待提交阶段,从共享内存中读取所述第一交易的执行信息;提交所述第一交易的执行信息。
本申请为2020年10月28日提交的申请号为202011173782.0,名为“在区块链中并发执行交易的方法和装置”的发明专利申请的分案申请。
技术领域
本说明书实施例涉及区块链技术领域,更具体地,涉及一种在区块链中并发执行交易的方法和装置。
背景技术
区块链技术是构建在点对点(P2P)网络上,利用链式数据结构来验证与存储数据,利用分布式节点共识算法来生成和更新数据,利用密码学的方式保证数据传输和访问的安全,利用由自动化脚本代码组成的智能合约来编程和操作数据的一种全新的分布式基础架构与计算范式。区块链技术也被称之为分布式账本技术,是一种去中心化的分布式数据库技术,其特点是去中心化、公开透明、不可篡改、可信任。区块链的每笔数据,都会广播到全网的区块链节点,每个全节点都有全量的、一致的数据。区块链中的节点通过发送交易而进行转账、存入数据等业务,区块链中的交易被打包到区块中发送给区块链中的各个节点,区块链中的节点通过执行区块中的各个交易而更新区块链的世界状态。为了保证各个节点的数据一致性,各个节点中在执行区块中的多个交易时,对该多个交易的提交顺序需要是一致的,这样才能得到一致的执行信息。因此,在现有技术中,记账节点在执行交易之前会按照预定规则对将要执行的多个交易进行编号,并按照编号的顺序依次执行多个交易,也即依次提交多个交易,并且其它节点在接收到该区块之后,也是按照上述交易编号顺序依次执行并提交所述多个交易。
在并发执行多个交易的方案中,为了保证交易提交顺序的一致性,线程在执行完交易之后,如果前面的交易还未提交,该线程需要等待前面的交易提交完成之后再进行提交或者交易重做。
因此,需要一种更有效的并发执行交易的方案。
发明内容
本说明书实施例旨在提供一种更有效的并发执行交易的方案,以解决现有技术中的不足。
为实现上述目的,本说明书一个方面提供一种在区块链中并发执行交易的方法,包括:
由第一执行体获取当前待执行的第一交易;
执行所述第一交易;
将所述第一交易的执行信息存储到共享内存中;
在共享内存中记录所述第一交易的处理阶段为待提交阶段;
由第二执行体确定当前应提交的第一交易;
在共享内存中读取第一交易的处理阶段;
如果第一交易的处理阶段为待提交阶段,从共享内存中获取所述第一交易的执行信息;
提交所述第一交易的执行信息。
在一种实施方式中,所述方法还包括,在提交所述第一交易的执行信息之后,由第二执行体确定与所述第一交易之间存在变量访问冲突的第二交易;
对第二交易的处理阶段进行修改,以指示第二交易需要重做。
在一种实施方式中,所述方法还包括,所述第二执行体在确定当前应提交的第一交易之后,将所述第一交易的处理阶段修改为提交中阶段;在提交所述第一交易之后,将所述第一交易的处理阶段修改为已提交阶段。
在一种实施方式中,对第二交易的处理阶段进行修改,以指示第二交易需要重做包括:
如果所述第二交易的处理阶段为待提交阶段,则将所述第二交易的处理阶段修改为第一重做阶段;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于支付宝(杭州)信息技术有限公司,未经支付宝(杭州)信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110290736.7/2.html,转载请声明来源钻瓜专利网。