System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 区块链共识方法、装置、计算机设备、存储介质制造方法及图纸_技高网

区块链共识方法、装置、计算机设备、存储介质制造方法及图纸

技术编号:41300117 阅读:3 留言:0更新日期:2024-05-13 14:47
本申请涉及一种区块链共识方法、装置、计算机设备、存储介质和计算机程序产品。所述方法包括:从缓存中获取未达成共识的且为非剔除类的第一交易任务;当所述第一交易任务的数量小于预设数量时,基于所述预设数量和所述数量从交易池中抓取第二交易任务;将所述第一交易任务和所述第二交易任务,封装成待共识区块的提案消息;将所述提案消息广播至区块链中的第一节点,以使所述第一节点基于所述第一交易任务和所述第二交易任务对所述待共识区块进行共识。采用本方法能够有效降低交易执行的时间,在提高共识效率的同时也有效降低了资源消耗。

【技术实现步骤摘要】

本申请涉及计算机,特别是涉及一种区块链共识方法、装置、计算机设备、存储介质和计算机程序产品。


技术介绍

1、区块链是一种新型去中心化分布式账本技术,能安全地存储交易或其他数据,特点是存储在区块链上的信息不可伪造和篡改,区块链共识算法驱动区块链上的每个节点都参与到交易的验证过程中,保证区块链上交易都是经过确认可信的。

2、然而,目前的区块链共识方式中,要求区块链中所有节点的状态必须是一致的,只有这样区块链才能达成共识,否则整个区块链就无法正常运行,但在实际业务中,由于智能合约中携带了随机数、时间戳等不确定的结果,这种类型的合约在执行时,不同的节点会产生不同的结果,从而无法达成共识,使得区块链的共识效率较低。


技术实现思路

1、基于此,有必要针对上述技术问题,提供一种能够有效提高区块链的共识效率,同时又可以降低资源消耗的区块链共识方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。

2、第一方面,本申请提供了一种区块链共识方法。所述方法包括:从缓存中获取未达成共识的且为非剔除类的第一交易任务;当所述第一交易任务的数量小于预设数量时,基于所述预设数量和所述数量从交易池中抓取第二交易任务;将所述第一交易任务和所述第二交易任务,封装成待共识区块的提案消息;将所述提案消息广播至区块链中的第一节点,以使所述第一节点基于所述第一交易任务和所述第二交易任务对所述待共识区块进行共识。

3、第二方面,本申请还提供了一种区块链共识装置。所述装置包括:获取模块,用于从缓存中获取未达成共识的且为非剔除类的第一交易任务;抓取模块,用于当所述第一交易任务的数量小于预设数量时,基于所述预设数量和所述数量从交易池中抓取第二交易任务;封装模块,用于将所述第一交易任务和所述第二交易任务,封装成待共识区块的提案消息;广播模块,用于将所述提案消息广播至区块链中的第一节点,以使所述第一节点基于所述第一交易任务和所述第二交易任务对所述待共识区块进行共识。

4、第三方面,本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:从缓存中获取未达成共识的且为非剔除类的第一交易任务;当所述第一交易任务的数量小于预设数量时,基于所述预设数量和所述数量从交易池中抓取第二交易任务;将所述第一交易任务和所述第二交易任务,封装成待共识区块的提案消息;将所述提案消息广播至区块链中的第一节点,以使所述第一节点基于所述第一交易任务和所述第二交易任务对所述待共识区块进行共识。

5、第四方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:从缓存中获取未达成共识的且为非剔除类的第一交易任务;当所述第一交易任务的数量小于预设数量时,基于所述预设数量和所述数量从交易池中抓取第二交易任务;将所述第一交易任务和所述第二交易任务,封装成待共识区块的提案消息;将所述提案消息广播至区块链中的第一节点,以使所述第一节点基于所述第一交易任务和所述第二交易任务对所述待共识区块进行共识。

6、第五方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:从缓存中获取未达成共识的且为非剔除类的第一交易任务;当所述第一交易任务的数量小于预设数量时,基于所述预设数量和所述数量从交易池中抓取第二交易任务;将所述第一交易任务和所述第二交易任务,封装成待共识区块的提案消息;将所述提案消息广播至区块链中的第一节点,以使所述第一节点基于所述第一交易任务和所述第二交易任务对所述待共识区块进行共识。

7、上述区块链共识方法、装置、计算机设备、存储介质和计算机程序产品,从缓存中获取未达成共识的且为非剔除类的第一交易任务;当所述第一交易任务的数量小于预设数量时,基于所述预设数量和所述数量从交易池中抓取第二交易任务;将所述第一交易任务和所述第二交易任务,封装成待共识区块的提案消息;将所述提案消息广播至区块链中的第一节点,以使所述第一节点基于所述第一交易任务和所述第二交易任务对所述待共识区块进行共识。由于第一交易任务是上个轮次中已经执行过的交易任务,故在本轮共识过程中,可以优先从缓存中获取上个轮次中已经执行过的交易任务,这些交易任务在本轮共识中不需要再执行,从而可以有效提高交易任务的执行效率,同时,第一交易任务为非剔除类的交易任务,即在本轮共识中,为了尽可能的提高本次提案能够达成共识的成功率,因此,在本次提案中尽量不加入需要剔除的交易任务,只有当第一交易任务的数量小于预设数量时,才会基于预设数量和第一交易任务的数量从交易池中抓取第二交易任务,并将第一交易任务和第二交易任务,封装成待共识区块的提案消息,由此使得,通过利用缓存中已有的第一交易任务,能够有效降低交易执行的时间,在提高共识效率的同时也有效降低了资源消耗。

本文档来自技高网...

【技术保护点】

1.一种区块链共识方法,其特征在于,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述方法还包括:

3.根据权利要求1所述的方法,其特征在于,所述当所述第一交易任务的数量小于预设数量时,基于所述预设数量和所述数量从交易池中抓取第二交易任务,包括:

4.根据权利要求3所述的方法,其特征在于,所述从交易池中,按照所述第一抓取数量和合约优先级抓取第二交易任务,包括:

5.根据权利要求4所述的方法,其特征在于,所述方法还包括:

6.根据权利要求1所述的方法,其特征在于,所述第一节点包括第一从节点和至少一个第二从节点;

7.根据权利要求6所述的方法,其特征在于,所述方法还包括:

8.根据权利要求6所述的方法,其特征在于,所述对所述第一交易任务和所述第二交易任务进行合法性验证,得到验证结果,包括:

9.根据权利要求8所述的方法,其特征在于,所述遍历执行所述提案消息中的各交易任务,得到用于表示各所述交易任务是否合法的验证结果,包括:

10.根据权利要求9所述的方法,其特征在于,所述方法还包括:

11.根据权利要求7所述的方法,其特征在于,所述将符合所述剔除条件的交易任务所对应的合约优先级进行调整,包括:

12.根据权利要求11所述的方法,其特征在于,所述方法还包括:

13.根据权利要求12所述的方法,其特征在于,所述方法还包括:

14.根据权利要求11所述的方法,其特征在于,所述方法还包括:

15.一种区块链共识装置,其特征在于,所述装置包括:

16.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至14中任一项所述的方法的步骤。

17.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至14中任一项所述的方法的步骤。

18.一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至14中任一项所述的方法的步骤。

...

【技术特征摘要】

1.一种区块链共识方法,其特征在于,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述方法还包括:

3.根据权利要求1所述的方法,其特征在于,所述当所述第一交易任务的数量小于预设数量时,基于所述预设数量和所述数量从交易池中抓取第二交易任务,包括:

4.根据权利要求3所述的方法,其特征在于,所述从交易池中,按照所述第一抓取数量和合约优先级抓取第二交易任务,包括:

5.根据权利要求4所述的方法,其特征在于,所述方法还包括:

6.根据权利要求1所述的方法,其特征在于,所述第一节点包括第一从节点和至少一个第二从节点;

7.根据权利要求6所述的方法,其特征在于,所述方法还包括:

8.根据权利要求6所述的方法,其特征在于,所述对所述第一交易任务和所述第二交易任务进行合法性验证,得到验证结果,包括:

9.根据权利要求8所述的方法,其特征在于,所述遍历执行所述提案消息中的各交易任务,得到用于表示各所述交易任务是否合法的验证结果,包括:

<...

【专利技术属性】
技术研发人员:邵珠光
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:

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

1