本发明涉及计算机,尤其涉及一种区块链共识机制输入交易的批处理参数自适应控制方法及系统。
背景技术:
0、技术背景
1、共识机制是区块链技术的关键和核心。现有的共识机制为了降低确认单笔交易的通信开销、提升系统吞吐量,通常采用交易批处理的方法,将多笔交易打包成一批、再按批为最小单位输入给共识机制处理。在交易打包为批的过程中,需要以来若干批处理参数,比如每批包含交易数量的上限b、每打包两个批之间最大的时间间隔t。这些批处理参数对共识机制的性能有关键影响,比如过小的b在负载较大时会影响共识机制的吞吐量、过大的b在系统负载较小时会导致共识机制的确认过慢,过小的t会导致每批仅能包含很少的交易而伤害吞吐量、过大的t在低负载时会导致等待打包的时间过长而造成确认减慢。因此,需要一种新的批处理参数自适应控制方法和系统,以自适应地提升共识机制运行时的效率。
技术实现思路
1、为解决现有区块链共识机制技术中固定批处理参数难以适应不断变化的负载情况的问题,本发明提供一种批处理参数自适应控制方法及系统。
2、本发明具体采用的技术方案如下:
3、一种区块链共识机制中的批处理参数自适应控制方法,包括以下步骤:
4、1)在区块链的目标部署环境和目标节点数量下,测试不同t和b的组合下的共识机制实际的平均吞吐量θ和平均确认延迟时间τ,其中t为每打包两个批之间最大的时间间隔,b为每批包含交易数量的上限,得到θ,τ对t,b的依赖关系即性能约束函数f(t,b);
5、2)在共识机制运行时,根据共识节点的瞬时负载β,在性能约束函数f(t,b)上计算使θ大于β的所有输入点,从该所有输入点中找到确认延迟最小的一组输入点(tmin,bmin),并作为初始的批处理参数带入批处理打包过程;
6、3)设定优化目标函数,以(tmin,bmin)为初始点,寻找使优化目标函数的值最大的一组(t,b),并作为新的批处理参数带入批处理打包过程。
7、进一步地,步骤2)中通过差值算法在性能约束函数f(t,b)上计算使θ大于β的所有输入点。
8、进一步地,步骤2)中β<θ<1.1β。
9、进一步地,步骤3)中设定满足对τ为减函数、对θ为增函数的函数作为优化目标函数。
10、进一步地,步骤3)中在初始点(tmin,bmin)周围使用梯度下降算法,寻找使优化目标函数值最大的一组(t,b)。
11、进一步地,步骤2)和3)中批处理打包过程包括以下步骤:
12、启动一个在t时间之后到期的定时器,同时等待接收更多的待打包交易;
13、如果在定时器到期之前,待打包的交易数量已经等于或超过b,则清空定时器,并将b个交易进行批处理打包;
14、如果在定时器到期并清空后,待打包的交易数量仍小于b,则将所有的待处理交易进行批处理打包;
15、当前一批交易打包完成,重新启动一个t时间之后到期的定时器,并重复以上步骤直到新一批交易打包完成。
16、一种区块链共识机制中的批处理参数自适应控制系统,包括:
17、待处理交易暂存器,用于收集待上链的交易;
18、批处理参数控制器,用于在区块链的目标部署环境和目标节点数量下,测试不同t和b的组合下的共识机制实际的平均吞吐量θ和平均确认延迟时间τ,其中t为每打包两个批之间最大的时间间隔,b为每批包含交易数量的上限,得到θ,τ对t,b的依赖关系即性能约束函数f(t,b);在共识机制运行时,根据共识节点的瞬时负载β,在性能约束函数f(t,b)上计算使θ大于β的所有输入点,从该所有输入点中找到确认延迟最小的一组输入点(tmin,bmin),并作为初始的批处理参数;设定优化目标函数,以(tmin,bmin)为初始点,寻找使优化目标函数的值最大的一组(t,b),并作为新的批处理参数;
19、交易批打包器,用于按照初始的批处理参数或新的批处理参数进行批处理打包;
20、交易批暂存器,用于临时存储批处理打包后的交易批。
21、进一步地,交易批打包器进行批处理打包的步骤包括:
22、启动一个在t时间之后到期的定时器,同时等待接收更多的待打包交易;
23、如果在定时器到期之前,待打包的交易数量已经等于或超过b,则清空定时器,并将b个交易进行批处理打包;
24、如果在定时器到期并清空后,待打包的交易数量仍小于b,则将所有的待处理交易进行批处理打包;
25、当前一批交易打包完成,重新启动一个t时间之后到期的定时器,并重复以上步骤直到新一批交易打包完成。
26、本发明具有的优点:
27、1.动态调整能力:本发明能够实时监测区块链系统的瞬时负载,并根据负载情况动态调整批处理参数(交易数量的上限b和每打包两个批之间最大的时间间隔t),确保系统在不同负载下的最佳性能。
28、2.降低确认延迟:通过自适应优化和调整批处理参数,显著降低交易的确认延迟时间,提高用户体验,满足对快速交易确认的需求。
29、3.提升交易吞吐量:优化后的批处理参数使得共识机制在单位时间内能处理更多交易,显著提高平均吞吐量,使系统能够更好地应对高并发交易场景。
30、4.优化资源利用:通过智能调节参数,减少资源浪费,确保系统资源(如计算能力和存储)被更高效地使用,从而提升整体系统的性能。
31、5.增强系统适应性:能够适应不断变化的交易模式和网络状况,提高区块链系统的灵活性,使其在多种环境下均能保持稳定高效的运行,提升共识机制运行时的效率。
32、6.易于实现与集成:该方法具有较高的可实施性,能够与现有的区块链共识机制无缝集成,提升现有系统的性能而无需大幅度的架构改动。
33、7.提升安全性:通过减少延迟和提高吞吐量,降低了因网络拥堵引发的安全风险,如交易被延迟确认或丢失的风险。
34、8.持续优化:随着系统运行时间的增加,批处理参数控制器可以不断进行自适应优化,确保系统始终在最佳状态下运行。
1.一种区块链共识机制中的批处理参数自适应控制方法,包括以下步骤:
2.如权利要求1所述的方法,其特征在于,步骤2)中通过差值算法在性能约束函数f(t,b)上计算使θ大于β的所有输入点。
3.如权利要求1或2所述的方法,其特征在于,步骤2)中β<θ<1.1β。
4.如权利要求1所述的方法,其特征在于,步骤3)中设定满足对τ为减函数、对θ为增函数的函数作为优化目标函数。
5.如权利要求1或4所述的方法,其特征在于,步骤3)中在初始点(tmin,bmin)周围使用梯度下降算法,寻找使优化目标函数值最大的一组(t,b)。
6.如权利要求1所述的方法,其特征在于,步骤2)和3)中批处理打包过程包括以下步骤:
7.一种区块链共识机制中的批处理参数自适应控制系统,包括:
8.如权利要求7所述的系统,其特征在于,通过差值算法在性能约束函数f(t,b)上计算使β<θ<1.1β的所有输入点。
9.如权利要求7所述的系统,其特征在于,设定满足对τ为减函数、对θ为增函数的函数作为优化目标函数;在初始点(tmin,bmin)周围使用梯度下降算法,寻找使优化目标函数值最大的一组(t,b)。
10.如权利要求7所述的系统,其特征在于,交易批打包器进行批处理打包的步骤包括: