一种区块链交易的批处理方法、设备和存储介质技术

技术编号:23345466 阅读:106 留言:0更新日期:2020-02-15 04:35
本发明专利技术提供一种区块链交易的批处理方法、设备和存储介质,该方法包括:包括:从交易池中获取第一交易后,根据第一标识判断第一交易是否为特殊交易:是,则验证第一交易是否符合预定的格式:是,根据第一交易的第一编号判断第一交易是否按照预定的顺序顺位:是,则打包第一交易进区块中;否,则放弃第一交易打包进区块中。其中,第一标识,第一编号均由客户端生成。本发明专利技术通过在发送交易时为需要顺序处理的特殊交易配置第一标识和第一编号,以供区块链节点在拿到交易后判断该交易是否需要按照顺位排列,从而实现特殊交易的顺序批处理。

A batch processing method, device and storage medium for blockchain transactions

【技术实现步骤摘要】
一种区块链交易的批处理方法、设备和存储介质
本申请涉及区块链信息
,具体涉及一种区块链交易的批处理方法、设备和存储介质。
技术介绍
客户端发送交易至区块链节点,该节点从交易池中的交易选择若干交易进行打包进区块,从而继续后面的上链流程。然而在现有的交易处理技术中,通常是客户端在发送完一个交易待回执确认该交易已经打包进区块并上链后才能进行下一笔交易的发送,甚至可能由于一些客观原因,导致某些交易不能按客户端发送的顺序依次打包进区块中,给用户造成极大的不便及困扰,同时也降低了交易发送的效率。
技术实现思路
鉴于现有技术中的上述缺陷或不足,期望提供一种可以顺序处理的高效的区块链交易的批处理方法、设备和存储介质。第一方面,本专利技术提供一种区块链交易的批处理方法,包括:从交易池中获取第一交易后,根据第一标识判断第一交易是否为特殊交易:是,则验证第一交易是否符合预定的格式:是,根据第一交易的第一编号判断第一交易是否按照预定的顺序顺位:是,则打包第一交易进区块中;否,则放弃第一交易打包进区块中。其中,第一标识,第一编号均由客户端生成。进一步,接收客户端发送的注册交易,执行注册交易成功后,返回第二标识至客户端,验证第一交易是否符合预定的格式包括:验证第二标识与客户端是否匹配:是,则验证通过。进一步,第二标识由注册交易的交易哈希和第二区块的区块高度生成,其中,第二区块为注册交易所在的区块。进一步,发送回执信息至客户端,以供客户端判断在设定的时间内是否收到回执信息:若客户端在设定的时间内未收到回执信息,则重新发送第一交易至区块链节点。进一步,配置第一接口以供客户端在多次重新发送第一交易后仍然失败时,查询当前区块链记录的编号以供客户端根据编号进行调整。第二方面,本专利技术还提供一种设备,包括一个或多个处理器和存储器,其中存储器包含可由该一个或多个处理器执行的指令以使得该一个或多个处理器执行根据本专利技术各实施例提供的区块链交易的批处理方法。第三方面,本专利技术还提供一种存储有计算机程序的存储介质,该计算机程序使计算机执行根据本专利技术各实施例提供的区块链交易的批处理方法。本专利技术诸多实施例提供的区块链交易的批处理方法、设备和存储介质通过在发送交易时为需要顺序处理的特殊交易配置第一标识和第一编号,以供区块链节点在拿到交易后判断该交易是否需要按照顺位排列,从而实现特殊交易的顺序批处理。附图说明通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:图1为本专利技术区块链交易的批处理的场景示意图。图2为本专利技术一实施例提供的一种区块链交易的批处理方法的流程图。图3为本专利技术所示方法的一种优选实施方式的流程图。图4为本专利技术一实施例提供的一种设备的结构示意图。具体实施方式下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关专利技术,而非对该专利技术的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与专利技术相关的部分。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。图1为本专利技术区块链交易的批处理的场景示意图。本专利技术中提到的交易分为一般交易和特殊交易,其中,一般交易即指的是用户正常发送的交易,对此交易的时效性,顺序性没有特殊的要求,特殊交易指的是当前类型的交易一定要在上一个交易之后,下一个要求之前,该类型的交易对于交易打包的顺序有要求。如图1所示,客户端A,B,C各自发送区块链交易,存储在交易池中,其中,客户端A发送的某些交易为特殊交易,用第一标识为“*”“#”区分特殊交易和一般交易,“#”为一般交易,“*”为特殊交易,A为智能合约为客户端A生成的第二标识,用于区分各客户端,第一编号用“1,2,3”表示,由客户端生成用于识别客户端发出特殊交易的顺位编号。图2为本专利技术一实施例提供的一种区块链交易的批处理方法的流程图。如图2所示,在本实施例中,本专利技术提供一种区块链交易的批处理方法,包括:S11、从交易池中获取第一交易后,根据第一标识判断第一交易是否为特殊交易:是,则验证第一交易是否符合预定的格式:是,根据第一交易的第一编号判断第一交易是否按照预定的顺序顺位:是,则打包第一交易进区块中;否,则放弃第一交易打包进区块中。其中,第一标识,第一编号均由客户端生成。具体地,结合图1所示场景,交易池中分别有客户端A,B,C,……发送的交易,其中包括一般交易和特殊交易。区块链节点从交易池中获取第一交易tx1,判断该交易是否为特殊交易:当判断出该交易包含第一标识“*”时,则判断出该交易为特殊交易,然后进一步判断该交易的预定义格式是否正确:即判断第二标识“A”是否与客户端所对应的第二标识一致,若一致,则证明格式正确,该交易tx1确实为客户端A所发出;最后,验证tx1交易的第一编号“1”是否为该客户端发出的特殊交易的顺位交易:是,则将tx1打包进区块中。同理,进行下一交易的识别判断,如图1所示,下一交易tx2的第一标识为“#”,为一般交易,这时只需判断该交易tx2是否符合预定义格式:即是否为客户端B发出,若是,则将该交易打包进区块。同理,进行下一交易tx3的识别判断,确定tx3为特殊交易,且该交易确实为客户端A发出,但是第一编号为“3”,而在当前打包的区块中上一个A发出的特殊交易编号为“1”,tx3明显不是下一个顺位编号,因此将tx3抛回交易池中,并进行下一交易tx4的判断,判断方式与上述一致。需要说明的是,本专利技术所指的特殊交易的顺位指的是编号上顺位,空间上并不一定必须相邻,换句话说,即使两个顺位的特殊交易之间隔着若干个一般交易也可以。第一标识,第二标识,及第一编号均为本实施例的示例,还可以用其他内容表达,如特殊交易用“Batch”,一般交易用“normal”表示;客户端的第二标识可以用区块哈希等其他唯一的表示,第一编号还可以用“a,b,c”等形式表示,总之,其内容并不受本实施例的限制,能实现其代表的效果即可。在更多实施例中,当不是顺位编号的特殊交易抛回交易池后,可以在当前交易池执行固定的几个区块后再重新执行该交易,也可以将交易池的交易都执行过以后再执行该交易,结合图1,当tx3被抛回交易池中后进行下一交易tx4,tx5,tx6三个区块后,再重新获取tx3,也可以在所有的交易都执行完后再执行tx3,区别在于打包进区块并上链的时间不同,这个可以根据用户的需求进行调整,并不受本专利技术技术的限制。在更多实施例,在获取第一交易之前,还包括:S10、接收客户端发送的注册交易,执行注册交易成功后,返回第二标识至客户端,验证第一交易是否符合预定的格式包括:验证第二标识与客户端是否匹配:是,则验证通过。更多的,该第二本文档来自技高网...

【技术保护点】
1.一种区块链交易批处理方法,其特征在于,所述方法适用于区块链节点,包括:/n从交易池中获取第一交易后,根据第一标识判断第一交易是否为特殊交易:/n是,则验证所述第一交易是否符合预定的格式:/n是,根据第一交易的第一编号判断所述第一交易是否按照预定的顺序顺位:/n是,则打包所述第一交易进区块中;/n否,则放弃所述第一交易打包进区块中。/n其中,所述第一标识,第一编号均由客户端生成。/n

【技术特征摘要】
1.一种区块链交易批处理方法,其特征在于,所述方法适用于区块链节点,包括:
从交易池中获取第一交易后,根据第一标识判断第一交易是否为特殊交易:
是,则验证所述第一交易是否符合预定的格式:
是,根据第一交易的第一编号判断所述第一交易是否按照预定的顺序顺位:
是,则打包所述第一交易进区块中;
否,则放弃所述第一交易打包进区块中。
其中,所述第一标识,第一编号均由客户端生成。


2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
接收客户端发送的注册交易,执行所述注册交易成功后,返回所述第二标识至所述客户端,所述验证所述第一交易是否符合预定的格式包括:
验证第二标识与所述客户端是否匹配:是,则验证通过。


3.根据权利要求2所述的方法,其特征在于,所述第二标识由注册交易的交易哈希和第二区块的区块高度生成,其中,所述第二区块为所述注册...

【专利技术属性】
技术研发人员:李伟邱炜伟尹可挺徐才巢
申请(专利权)人:杭州趣链科技有限公司
类型:发明
国别省市:浙江;33

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

1