一种区块链并行交易处理方法及装置制造方法及图纸

技术编号:27842834 阅读:20 留言:0更新日期:2021-03-30 12:36
本发明专利技术公开了一种区块链并行交易处理方法,应用于交易处理服务,所述交易处理服务包括:主节点和至少一个从节点,每一个从节点包括至少一个虚拟节点,所述方法包括:获取各个待处理交易的输入输出参数;依据各个输入输出参数对各个待处理参数进行分组,得到冲突待处理交易集和/或非冲突待处理交易集;将冲突待处理交易集分配给同一从节点,将非冲突待处理交易集分配给交易处理服务中各个从节点中的至少一个;当分配完成时,以令各个从节点采用并行化的方式处理各个待处理交易。上述方法,对各个待处理交易进行分类,将存在冲突的冲突待处理交易集分配给同一节点处理,之后再令各个从节点并行处理,在保证交易准确的前提下,提高了吞吐量。提高了吞吐量。提高了吞吐量。

【技术实现步骤摘要】
一种区块链并行交易处理方法及装置


[0001]本专利技术涉及区块链
,尤其涉及一种区块链并行交易处理方法及装置。

技术介绍

[0002]当前区块链网络的交易吞吐量极为受限。当网络交易数量激增时,区块链网络会发生严重的拥堵事件。例如,DeFi(去中心化金融)热潮导致以太坊网络数次遭受交易拥堵。
[0003]造成这一现象的一个重要原因是,目前主流的区块链网络均采用单一节点对交易进行处理和打包。传统方案采用在单一节点上串行化执行交易是因为:串行化执行虽然牺牲了交易吞吐量,但是可以很简单、直接地满足区块链交易的正确性。
[0004]为了提高一个区块包含的交易量,需要把对交易的运算从单一节点延展至多个节点并进行并行处理。并行处理虽然在理论上可以提高交易的吞吐量,但是对交易的正确性提出了极大的挑战。一些原本在串行处理中不会发生的异常现象,却会在并行化处理中变得很普遍。例如,考虑某一个用户的两个转账交易,交易的逻辑都是把账户里的所有余额转至收款方。在串行处理方案下,第二个交易会被取消,因为在交易执行的时候,账户已经没有余额。然而在并行处理方案下,两个交易同时执行,同时看到了账户的余额。如果系统处理不善,那么很可能账户的余额被转账了两次,因此并行处理的正确性没有办法保证。

技术实现思路

[0005]有鉴于此,本专利技术提供了一种区块链并行交易处理方法及装置,用于解决现有的并行处理虽然在理论上可以提高交易的吞吐量,但是对交易的正确性提出了极大的挑战的问题,具体方案如下:
[0006]一种区块链并行交易处理方法,应用于交易处理服务,所述交易处理服务包括:主节点和至少一个从节点,每一个从节点包括至少一个虚拟节点,所述方法包括:
[0007]获取各个待处理交易的输入输出参数;
[0008]依据各个输入输出参数对所述各个待处理交易进行分组,得到冲突待处理交易集和/或非冲突待处理交易集,其中,所述冲突待处理交易集为输入输出参数存在交集的各个待处理交易;
[0009]将所述冲突待处理交易集分配给同一从节点,将所述非冲突待处理交易集分配给所述交易处理服务中各个从节点中的至少一个;
[0010]当分配完成时,以令所述各个从节点采用并行化的方式处理所述各个待处理交易。
[0011]上述的方法,可选的,将所述冲突待处理交易集分配给同一从节点,包括:
[0012]获取所述交易集群中各个从节点的可用计算资源;
[0013]依据所述可用计算资源为所述各个从节点分配虚拟节点;
[0014]获取所述冲突待处理交易集需要的计算资源,基于所述计算资源和各个可用计算资源在所述交易集群中选取目标从节点,所述目标从节点为一个;
[0015]将所述冲突待处理交易集中的各个待处理交易分配给所述目标从节点中的同一虚拟节点。
[0016]上述的方法,可选的,还包括:
[0017]轮询各个从节点的当前状态;
[0018]若存在处理结束的空闲从节点,获取可转移虚拟节点任务;
[0019]将所述可转移虚拟节点任务转移值所述空闲从节点。
[0020]上述的方法,可选的,还包括:
[0021]获取所述当前虚拟节点中各个待处理交易的运算结果,依据执行顺序对各个运算结果进行整合,得到第一整合结果;
[0022]获取当前从节点中各个虚拟节点的第一整合结果,对各个第一整合结果进行整合,得到第二整合结果;
[0023]在各个从节点运算完成时,对各个第二整合结果进行整合,得到目标整合结果,将所述目标整合结果上链。
[0024]上述的方法,可选的,当分配完成时,以令所述各个从节点采用并行化的方式处理所述各个待处理交易,包括:
[0025]针对所述交易处理服务中的各个从节点采用并行并行化的方式处理;
[0026]针对每一个从节点中的各个虚拟节点,采用二阶段锁定或者序列化快照隔离的方式对其中的各个待处理交易进行并行处理。
[0027]一种区块链并行交易处理装置,应用于交易处理服务,所述交易处理服务包括:主节点和至少一个从节点,每一个从节点包括至少一个虚拟节点,所述装置包括:
[0028]第一获取模块,用于获取各个待处理交易的输入输出参数;
[0029]分组模块,用于依据各个输入输出参数对所述各个待处理交易进行分组,得到冲突待处理交易集和/或非冲突待处理交易集,其中,所述冲突待处理交易集为输入输出参数存在交集的各个待处理交易;
[0030]分配模块,用于将所述冲突待处理交易集分配给同一从节点,将所述非冲突待处理交易集分配给所述交易处理服务中各个从节点中的至少一个;
[0031]处理模块,用于当分配完成时,以令所述各个从节点采用并行化的方式处理所述各个待处理交易。
[0032]上述的装置,可选的,所述分配模块包括:
[0033]获取单元,用于获取所述交易集群中各个从节点的可用计算资源;
[0034]第一分配单元,用于依据所述可用计算资源为所述各个从节点分配虚拟节点;
[0035]获取和选取单元,用于获取所述冲突待处理交易集需要的计算资源,基于所述计算资源和各个可用计算资源在所述交易集群中选取目标从节点,所述目标从节点为一个;
[0036]第二分配单元,用于将所述冲突待处理交易集中的各个待处理交易分配给所述目标从节点中的同一虚拟节点。
[0037]上述的装置,可选的,还包括:
[0038]轮询模块,用于轮询各个从节点的当前状态;
[0039]第二获取模块,用于若存在处理结束的空闲从节点,获取可转移虚拟节点任务;
[0040]转移模块,用于将所述可转移虚拟节点任务转移值所述空闲从节点。
[0041]上述的装置,可选的,还包括:
[0042]第一整合模块,用于获取所述当前虚拟节点中各个待处理交易的运算结果交易处理服务,依据执行顺序对各个运算结果进行整合,得到第一整合结果;
[0043]第二整合模块,用于获取当前从节点中各个虚拟节点的第一整合结果,对各个第一整合结果进行整合,得到第二整合结果;
[0044]第三整合模块,用于在各个从节点运算完成时,对各个第二整合结果进行整合,得到目标整合结果,将所述目标整合结果上链。
[0045]上述的装置,可选的,所述处理模块包括:
[0046]第一处理单元,用于针对所述交易处理服务中的各个从节点采用并行并行化的方式处理;
[0047]第二处理单元,用于针对每一个从节点中的各个虚拟节点,采用二阶段锁定或者序列化快照隔离的方式对其中的各个待处理交易进行并行处理。
[0048]与现有技术相比,本专利技术包括以下优点:
[0049]本专利技术公开了一种区块链并行交易处理方法及装置,应用于交易处理服务,所述交易处理服务包括:主节点和至少一个从节点,每一个从节点包括至少一个虚拟节点,所述方法包括:获取各个待处理交易的输入输出参数;依据各个输入输出参数对各个待处本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种区块链并行交易处理方法,其特征在于,应用于交易处理服务,所述交易处理服务包括:主节点和至少一个从节点,每一个从节点包括至少一个虚拟节点,所述方法包括:获取各个待处理交易的输入输出参数;依据各个输入输出参数对所述各个待处理交易进行分组,得到冲突待处理交易集和/或非冲突待处理交易集,其中,所述冲突待处理交易集为输入输出参数存在交集的各个待处理交易;将所述冲突待处理交易集分配给同一从节点,将所述非冲突待处理交易集分配给所述交易处理服务中各个从节点中的至少一个;当分配完成时,以令所述各个从节点采用并行化的方式处理所述各个待处理交易。2.根据权利要求1所述的方法,其特征在于,将所述冲突待处理交易集分配给同一从节点,包括:获取所述交易集群中各个从节点的可用计算资源;依据所述可用计算资源为所述各个从节点分配虚拟节点;获取所述冲突待处理交易集需要的计算资源,基于所述计算资源和各个可用计算资源在所述交易集群中选取目标从节点,所述目标从节点为一个;将所述冲突待处理交易集中的各个待处理交易分配给所述目标从节点中的同一虚拟节点。3.根据权利要求1所述的方法,其特征在于,还包括:轮询各个从节点的当前状态;若存在处理结束的空闲从节点,获取可转移虚拟节点任务;将所述可转移虚拟节点任务转移值所述空闲从节点。4.根据权利要求1所述的方法,其特征在于,还包括:获取所述当前虚拟节点中各个待处理交易的运算结果交易处理服务,依据执行顺序对各个运算结果进行整合,得到第一整合结果;获取当前从节点中各个虚拟节点的第一整合结果,对各个第一整合结果进行整合,得到第二整合结果;在各个从节点运算完成时,对各个第二整合结果进行整合,得到目标整合结果,将所述目标整合结果上链。5.根据权利要求1所述的方法,其特征在于,当分配完成时,以令所述各个从节点采用并行化的方式处理所述各个待处理交易,包括:针对所述交易处理服务中的各个从节点采用并行并行化的方式处理;针对每一个从节点中的各个虚拟节点,采用二阶段锁定或者序列化快照隔离的方式对其中的各个待处理交易进行并行处理。6.一种区块链并行交易处理装置,其特征在于,应用于交易处理服务,所述交易处理服务包括:主节点和至少一个从...

【专利技术属性】
技术研发人员:马史耀龙承念张国启
申请(专利权)人:上海物融智能科技有限公司
类型:发明
国别省市:

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

1