The embodiment of the present invention discloses a block generation method, device, device and storage medium. The method includes: when the initial processing time of arriving at the local node is detected, transaction requests are processed and transaction data is generated through at least one transaction processing class thread; if the arrival of the packing point is detected, the packaged transaction data is packaged by the packing thread to generate a new block. The embodiment of the present invention provides triggering conditions for packaging thread to package transaction data by detecting the packing point, so as to record effective transaction data in most blocks in the upper chain, reduce hollow or invalid blocks in the block chain, improve the rationality of processing and transmission resource utilization, and save storage space.
【技术实现步骤摘要】
区块生成方法、装置、设备及存储介质
本专利技术实施例涉及区块链技术
,尤其涉及一种区块生成方法、装置、设备及存储介质。
技术介绍
随着互联网技术的不断发展,一种去中心化且公开透明的区块链技术应运而生。区块链技术采用数据区块打破了目前互联网对中心服务器的依赖,网络中产生的所有数据都会被区块生成节点进行记录,并通过数据的广播和其他节点的验证,以形成新的区块并上链至区块链的尾部。待上链区块被确认后,该新的区块被永久记录于区块链中;否则对于得不到确认的区块,将区块中的数据回滚。现有技术中,从通用性角度考虑,区块链网络中不管采用何种共识机制和参数部署方式,通常采用的上链区块的确认方式均为若某个区块后成功上链6个区块,则表示该区块得到确认,可以被永久记录于区块链中。相应的,区块的出块时间直接影响事务数据的上链确认速度,缩短每个节点出块的时间能够加快区块的确认。然而鉴于通常区块链网络中发生的事务请求处于稀疏状态而非满负荷状态,当出块时间被大幅缩短时,区块链中会存在大量空区块以及无效区块,导致存储空间的无效占用以及处理及传输资源的浪费。
技术实现思路
本专利技术实施例提供了一种区块生成方法、装置、设备及存储介质,能够减少区块链中空区块或无效区块,提高处理及传输资源利用的合理性,节约存储空间。第一方面,本专利技术实施例提供了一种区块生成方法,由区块生成节点执行,所述方法包括:在检测到达本机节点的起始处理时间时,通过至少一个事务处理类线程对事务请求进行处理生成事务数据;若检测到达打包点,则通过打包线程对待打包的事务数据进行打包,生成新区块。第二方面,本专利技术实施例提供了一 ...
【技术保护点】
1.一种区块生成方法,其特征在于,由区块生成节点执行,所述方法包括:在检测到达本机节点的起始处理时间时,通过至少一个事务处理类线程对事务请求进行处理生成事务数据;若检测到达打包点,则通过打包线程对待打包的事务数据进行打包,生成新区块。
【技术特征摘要】
1.一种区块生成方法,其特征在于,由区块生成节点执行,所述方法包括:在检测到达本机节点的起始处理时间时,通过至少一个事务处理类线程对事务请求进行处理生成事务数据;若检测到达打包点,则通过打包线程对待打包的事务数据进行打包,生成新区块。2.根据权利要求1所述的方法,其特征在于,在检测到达本机节点的起始处理时间之前,还包括:获取本机节点在本次区块生成周期的起始出块时间,作为所述起始处理时间,其中所述起始出块时间是依据前一个区块生成节点的区块生成周期和节点间过渡时间确定的。3.根据权利要求2所述的方法,其特征在于,所述节点间过渡时间大于节点内出块时间,所述节点内出块时间为单个节点的区块生成周期内的出块间隔。4.根据权利要求2所述的方法,其特征在于,本机节点在本次区块生成周期的起始出块时间通过如下方式确定:将前一个区块生成节点的区块生成周期的终止出块时间和所述节点间过渡时间之和,作为本机节点在本次区块生成周期的起始出块时间。5.根据权利要求1所述的方法,其特征在于,在检测到达本机节点的起始处理时间之前,还包括:若检测到本机节点成功接收到前一区块生成节点的尾部区块,则将当前时间作为起始处理时间。6.根据权利要求1所述的方法,其特征在于,检测是否到达打包点,包括:依据当前时间与本机节点生成的上一区块生成时间之间的时间长度和/或待打包的事务数据的尺寸,检测是否到达打包点。7.根据权利要求6所述的方法,其特征在于,依据当前时间与本机节点生成的上一区块生成时间之间的时间长度,检测是否到达打包点,包括:若当前时间与本机节点生成的上一区块生成时间之间的时间长度等于或大于第一打包时间间隔阈值,则检测到到达打包点。8.根据权利要求6所述的方法,其特征在于,依据待打包的事务数据的尺寸,检测是否到达打包点,包括:若待打包的事物数据的尺寸大于或等于第一事务打包尺寸阈值,则检测到到达打包点。9.根据权利要求6所述的方法,其特征在于,依据当前时间与本机节点生成的上一区块生成时间之间的时间长度和待打包的事务数据的尺寸,检测是否到达打包点,包括:若当前时间与本机节点生成的上一区块生成时间之间的时间长度等于或大于第二打包时间间隔阈值,且待打包的事务数据的尺寸大于第二事务打包尺寸阈值,则检测到到达打包点。10.根据权利要求1所述的方法,其特征在于,所述方法还包括:若检测到区块链存在至少两个分叉链,则确定各分叉链中各区块的权重;依据各分叉链所包含的区块的权重,确定各分叉链的权重;依据各分叉链的权重从分叉链中确定主链,并将所述主链之外的分叉链回滚。11.根据权利要求10所述的方法,其特征在于,所述确定各分叉链中各区块的权重,包括:依据各分叉链中包含的区块信息确定目标攻击类型;依据预设的攻击类型与权重设定规则之间的关联关系,确定所述目标攻击类型所关联的目标权重设定规则;依据所述目标权重设定规则确定所述分叉链中各区块的权重。12.根据权利要求10所述的方法,其特征在于,所述确定各分叉链中各区块的权重,包括:若所述分叉链中任一当前区块的区块生成节点与所述当前区块的上一个区块的区块生成节点不相同,则设置所述当前区块的权重为第一数值;若所述当前区块的区块生成节点与所述当前区块的上一区块的区块生成节点相同,且所述上一区块为分叉区块,则将所述当前区块的权重设置为所述第一数值;若所述当前区块的区块生成节点与所述当前区块的上一区块的区块生成节点相同,且所述上一区块不为分叉区块,则将所述当前区块的权重设置为第二数值;其中,所述第一数值大于所述第二数值。13.根据权利要求10所述的方法,其特征在于,所述依据各分叉链所包含的区块的权重,确定各分叉链的权重,包括:将所述分叉链中所包含的各区块的权重求和得到所述分叉链的权重。14.根据权利要求10所述的方法,其特征在于,依据各分叉链的权重从分叉链中确定主链,包括:确定权重最大的分叉链作为主链。15.一种区块生成装置,其特征在于,配置于区块生成节点中,所述装置包括:事务请求处理模块,用于在检测到达本机节点的起始处理时间时,通过至少一个事务处理类线程对事务请求进行处理生成事务数据;...
【专利技术属性】
技术研发人员:肖伟,
申请(专利权)人:百度在线网络技术北京有限公司,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。