区块链数据处理方法、装置、可读存储介质和计算机设备制造方法及图纸

技术编号:22135221 阅读:15 留言:0更新日期:2019-09-18 08:57
本申请涉及一种区块链数据处理方法、装置、可读存储介质和计算机设备,该方法包括:对当前区块链进行压测处理,得到所述当前区块链的当前交易吞吐量;获取目标交易吞吐量,确定所述当前交易吞吐量和所述目标交易吞吐量的误差;根据反馈调节算法对所述误差进行处理,得到控制值;将所述控制值经过参数修正处理,得到单个区块的目标交易时间和单个区块中的目标交易数量;根据所述单个区块的目标交易时间和单个区块中的目标交易数量更新所述当前区块链。本方案解决了传统区块链性能调节的方式需要重新构建技术架构的周期长且成本高问题。

Block Chain Data Processing Method, Device, Readable Storage Media and Computer Equipment

【技术实现步骤摘要】
区块链数据处理方法、装置、可读存储介质和计算机设备
本申请涉及区块链
,特别是涉及一种区块链数据处理方法、装置、计算机可读存储介质和计算机设备。
技术介绍
区块链是一种分布式数据存储机制,是一串使用密码学方法链接的数据块,每一个数据块中记录了一批当时网络交易的信息。历史数据的增量扩充和服务资源的消耗占用等,往往会导致区块链的性能降低。传统的提高区块链性能的方法一般是通过重新构建区块链的技术框架,但是技术框架的重构往往经历前期调研、技术方案评估、预演、开发测试、实施和升级等流程,周期长,成本高。
技术实现思路
基于此,有必要针对重构区块链的技术框架的成本高的技术问题,提供一种区块链数据处理方法、装置、计算机可读存储介质和计算机设备。一种区块链数据处理方法,包括:对当前区块链进行压测处理,得到所述当前区块链的当前交易吞吐量;获取目标交易吞吐量,确定所述当前交易吞吐量和所述目标交易吞吐量的误差;根据反馈调节算法对所述误差进行处理,得到控制值;将所述控制值经过参数修正处理,得到单个区块的目标交易时间和单个区块中的目标交易数量;根据所述单个区块的目标交易时间和单个区块中的目标交易数量更新所述当前区块链。一种区块链数据处理装置,所述装置包括:压测模块,用于对当前区块链进行压测处理,得到所述当前区块链的当前交易吞吐量;确定模块,用于获取目标交易吞吐量,确定所述当前交易吞吐量和所述目标交易吞吐量的误差;处理模块,用于根据反馈调节算法对所述误差进行处理,得到控制值;修正模块,用于将所述控制值经过参数修正处理,得到单个区块的目标交易时间和单个区块中的目标交易数量;更新模块,用于根据所述单个区块的目标交易时间和单个区块中的目标交易数量更新所述当前区块链。一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行上述任一项所述方法的步骤。一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行上述任一项所述方法的步骤。上述区块链数据处理方法、装置、计算机可读存储介质和计算机设备,通过对当前区块链进行压测处理,得到当前区块链的当前交易吞吐量,从而确定当前区块链的处理性能。获取目标交易吞吐量,确定当前交易吞吐量和目标交易吞吐量的误差,从而确定当前的测得值和需要达到的目标值之间存在的差距。根据反馈调节算法对误差进行处理,得到控制值,通过反馈调节算法处理误差,得到需要调节的值。将控制值经过参数修正处理,得到单个区块的目标交易时间和单个区块中的目标交易数量,可以得到当前区块链从当前交易吞吐量达到目标交易吞吐量需要达到的单个区块的目标交易时间和单个区块中的目标交易数量,即从当前性能达到目标性需要调整的性能指标。根据单个区块的目标交易时间和单个区块中的目标交易数量更新当前区块链,使得更新后的当前区块链的交易吞吐量达到目标吞吐量。本方案解决了传统区块链性能调节的方式需要重新构建技术架构的周期长且成本高问题。附图说明图1为一个实施例中区块链数据处理方法的应用环境图;图2为一个实施例中区块链数据处理方法的流程示意图;图3为一个实施例中参数修正处理步骤的流程示意图;图4为一个实施例中对当前区块链进行压测处理的步骤的流程示意图;图5为另一个实施例中区块链数据处理方法的流程示意图;图6为另一个实施例中对当前区块链进行压测处理的步骤的流程示意图;图7为一个实施例中更新当前区块链的示意图;图8为其中一个实施例中区块链数据处理方法的流程示意图;图9为一个实施例中区块链数据处理的拟合曲线示意图;图10为一个实施例中该区块链数据处理的架构图;图11为一个实施例中区块链数据处理装置的结构框图;图12为一个实施例中计算机设备的结构框图。具体实施方式为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。图1为一个实施例中区块链数据处理方法的应用环境图。参照图1,该区块链数据处理方法应用于区块链数据处理系统。该区块链数据处理系统包括终端110和服务器120。终端110和服务器120通过网络连接。终端110具体可以是台式终端或移动终端,移动终端具体可以手机、平板电脑、笔记本电脑等中的至少一种。服务器120可以用独立的服务器或者是多个服务器组成的服务器集群来实现。终端110接收到调整当前区块链的交易吞吐量的指令时,将目标交易吞吐量发送给服务器120。服务器120接收终端110发送的目标交易吞吐量,对当前区块链进行压测处理,得到该当前区块链的当前交易吞吐量,并确定该当前交易吞吐量和该目标交易吞吐量的误差。接着根据反馈调节算法对该误差进行处理,得到控制值,将该控制值经过参数修正处理,得到单个区块的目标交易时间和单个区块中的目标交易数量,根据该单个区块的目标交易时间和单个区块中的目标交易数量更新该当前区块链。接着,服务器按照预设时间间隔对更新后的当前区块链再次进行压测处理,得到当前交易吞吐量,当当前区块链的当前交易吞吐量达到目标交易吞吐量时,停止对当前区块链的压测处理,从而实现了对当前区块链的性能的调节。如图2所示,在一个实施例中,提供了一种区块链数据处理方法。本实施例主要以该方法应用于上述图1中的服务器120来举例说明。参照图2,该区块链数据处理方法具体包括如下步骤:步骤202,对当前区块链进行压测处理,得到当前区块链的当前交易吞吐量。其中,当前区块链是指要调节性能的目标区块链。压测即压力测试,是约定系统稳定性的测试方法。交易吞吐量是指系统服务器每秒钟能够处理通过的交易数,简称TPS。当前交易吞吐量是指当前的检测的服务器每秒钟能够处理通过的交易数。具体地,服务器确定需要测试和调节性能的区块链,即当前区块链。接着,服务器可通过压测引擎对当前区块链进行测试,从测试结果中获取当前区块链的当前交易吞吐量。步骤204,获取目标交易吞吐量,确定当前交易吞吐量和目标交易吞吐量的误差。其中,目标交易吞吐量指预先设置的系统服务器每秒钟能够处理通过的交易数,目标交易吞吐量为目标值。误差是指测得值和目标值之间的差值。具体地,服务器获取预先设置的目标交易吞吐量,将压测得到的当前区块链的当前交易吞吐量和目标交易吞吐量作差,以确定当前交易吞吐量和目标交易吞吐量之间的误差,从而确定测得值和目标值之间存在的误差。步骤206,根据反馈调节算法对误差进行处理,得到控制值。其中,反馈调节算法是指将反馈值作为输入以调节得到目标值的算法。例如,当前区块链的当前交易吞吐量和目标交易吞吐量之间的误差作为反馈值,目标交易吞吐量作为要达到的目标值。控制值是指反馈调节算法对误差进行处理后得到的值。具体地,服务器获取反馈调节算法,根据反馈调节算法对当前交易吞吐量和目标交易吞吐量之间的误差进行处理,输出控制值。步骤208,将控制值经过参数修正处理,得到单个区块的目标交易时间和单个区块中的目标交易数量。其中,参数修正是指对区块链内存中存储的单个区块的交易时间和单个区块中的交易数量这两个配置项按照比例映射的方式重新设置。单个区块的目标交易时间即当前区块链需要达到的目标出块时间,是指当前区块链处理完一个区块中的交易所本文档来自技高网...

【技术保护点】
1.一种区块链数据处理方法,包括:对当前区块链进行压测处理,得到所述当前区块链的当前交易吞吐量;获取目标交易吞吐量,确定所述当前交易吞吐量和所述目标交易吞吐量的误差;根据反馈调节算法对所述误差进行处理,得到控制值;将所述控制值经过参数修正处理,得到单个区块的目标交易时间和单个区块中的目标交易数量;根据所述单个区块的目标交易时间和单个区块中的目标交易数量更新所述当前区块链。

【技术特征摘要】
1.一种区块链数据处理方法,包括:对当前区块链进行压测处理,得到所述当前区块链的当前交易吞吐量;获取目标交易吞吐量,确定所述当前交易吞吐量和所述目标交易吞吐量的误差;根据反馈调节算法对所述误差进行处理,得到控制值;将所述控制值经过参数修正处理,得到单个区块的目标交易时间和单个区块中的目标交易数量;根据所述单个区块的目标交易时间和单个区块中的目标交易数量更新所述当前区块链。2.根据权利要求1所述的方法,其特征在于,所述将所述控制值经过参数修正处理,得到单个区块的目标交易时间和单个区块中的目标交易数量,包括:获取比例映射系数,所述比例映射系数包括第一比例映射系数和第二比例映射系数;根据所述控制值、所述误差和所述第一比例映射系数,得到单个区块的目标交易时间;根据所述控制值、所述误差和所述第二比例映射系数,得到单个区块中的目标交易数量。3.根据权利要求1所述的方法,其特征在于,所述根据所述单个区块的目标交易时间和单个区块中的目标交易数量更新所述当前区块链,包括:确定所述当前区块链的单个区块的当前交易时间和单个区块中的当前交易数量;将所述当前区块链中的每个节点的单个区块的当前交易时间和单个区块中的当前交易数量,替换为所述单个区块的目标交易时间和单个区块中的目标交易数量。4.根据权利要求1所述的方法,其特征在于,所述对当前区块链进行压测处理,得到所述当前区块链的当前交易吞吐量,包括:获取压测引擎的压测参数,所述压测参数包括压测时长、压测并发数和压测总交易数;按照所述压测引擎的压测参数对当前区块链中的至少一个节点发送交易请求包,得到所述当前区块链中的至少一个节点的响应数据;从所述当前区块链中的至少一个节点的响应数据中获取所述当前区块链的当前交易吞吐量。5.根据权利要求1所述的方法,其特征在于,所述对当前区块链进行压测处理,得到所述当前区块链的当前交易吞吐量...

【专利技术属性】
技术研发人员:陈金龙周勇钧刘超农高明鲁四喜
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:广东,44

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

1