System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本公开涉及区块链,特别是涉及一种区块链上链方法、相关装置和介质。
技术介绍
1、目前,在区块链系统中,每个共识节点都需要将待上链的多个事务打包到区块中,并将包含多个事务的区块广播给其他共识节点,在接收到其他共识节点的共识确认之后才能够将区块上链。这一方式往往会在区块广播、共识等阶段造成较大的资源浪费,会导致区块链的吞吐量下降,使事务上链效率低下。
技术实现思路
1、本公开实施例提供了一种区块链上链方法、相关装置和介质,它能够提高事务上链效率。
2、根据本公开的一方面,提供了一种区块链上链方法,应用于区块链网络中的第一共识节点,所述区块链网络除了所述第一共识节点还包括第二共识节点,所述方法包括:
3、获取多个待上链事务批次,每个所述待上链事务批次包括多个所述共识节点中的一个所述共识节点的多个待上链事务;
4、针对每个所述待上链事务批次,将所述待上链事务批次中的多个所述待上链事务的事务索引打包到预生成区块;
5、将所述预生成区块广播给所述第二共识节点,以使所述第二共识节点基于所述事务索引获取所述待上链事务,并基于获取的多个所述待上链事务向所述第一共识节点进行共识反馈;
6、基于所述第二共识节点的所述共识反馈,将所述待上链事务打包成目标区块上链。
7、根据本公开的一方面,提供了一种区块链上链装置,应用于区块链网络中的第一共识节点,所述区块链网络除了所述第一共识节点还包括第二共识节点,所述装置包括:
8、获
9、打包单元,用于针对每个所述待上链事务批次,将所述待上链事务批次中的多个所述待上链事务的事务索引打包到预生成区块;
10、广播单元,用于将所述预生成区块广播给所述第二共识节点,以使所述第二共识节点基于所述事务索引获取所述待上链事务,并基于获取的多个所述待上链事务向所述第一共识节点进行共识反馈;
11、区块上链单元,用于基于所述第二共识节点的所述共识反馈,将所述待上链事务打包成目标区块上链。
12、可选地,所述打包单元具体用于:
13、获取每个所述待上链事务批次的第一时间戳,所述第一时间戳用于指示所述第一共识节点接收到所述待上链事务批次的时间点;
14、确定所述目标区块的可容纳事务数目;
15、基于所述第一时间戳的先后顺序,依次将所述待上链事务批次中的多个所述待上链事务的事务索引打包到所述预生成区块的区块体中,使所述预生成区块中的事务索引数目不超过所述可容纳事务数目。
16、可选地,所述打包单元具体用于:
17、针对每个所述待上链事务批次,获取所述待上链事务批次的各个待上链事务的第二时间戳;
18、将多个所述第二时间戳中时间最早的第二时间戳作为所述待上链事务批次的第三时间戳;
19、确定所述目标区块的可容纳事务数目;
20、基于所述第三时间戳的先后顺序,依次将所述待上链事务批次中的多个所述待上链事务的事务索引打包到所述预生成区块的区块体中,使所述预生成区块中的事务索引数目不超过所述可容纳事务数目。
21、可选地,所述第二共识节点的事务池中存储有多个所述待上链事务批次;
22、所述区块链上链装置还包括第一请求发送单元,所述第一请求发送单元具体用于:
23、所述第二共识节点基于所述事务索引,从所述事务池中提取与所述事务索引对应的所述待上链事务;
24、如果确定从所述事务池中无法提取到与所述事务索引对应的所述待上链事务批次,则向所述第一共识节点发送第一同步请求,以通过所述第一同步请求获取与所述事务索引对应的所述待上链事务批次。
25、可选地,所述区块链上链装置还包括第二请求发送单元,所述第二请求发送单元具体用于:
26、所述第二共识节点如果确定未接收到所述第一共识节点基于所述第一同步请求发送与所述事务索引对应的所述待上链事务批次,则获取其他所述第二共识节点维护的区块链的区块高度;
27、基于所述区块高度,从多个其他所述第二共识节点筛选出所述区块高度满足预设条件的筛选后共识节点;
28、向所述筛选后共识节点发送第二同步请求,以通过所述第二同步请求获取与所述事务索引对应的所述待上链事务批次。
29、可选地,所述确定从所述事务池中无法提取到与所述事务索引对应的所述待上链事务批次,包括:
30、从所述事务索引中提取到一个所述待上链事务批次的事务批次序号,得到目标批次号;
31、将所述目标批次号与所述事务池中的各个所述待上链事务批次的事务批次序号进行比较;
32、如果所述目标批次号与所述事务批次序号都不一致,则确定从所述事务池中无法提取到与所述事务索引对应的所述待上链事务批次。
33、可选地,所述区块链上链装置还包括共识单元,所述共识单元具体用于:
34、所述第二共识节点基于多个所述待上链事务对所述预生成区块进行区块重组,得到重组区块;
35、对所述重组区块进行区块共识,生成共识反馈,并将所述共识反馈发送给所述第一共识节点。
36、可选地,所述事务索引通过以下方式生成:
37、确定所述待上链事务批次的事务批次序号;
38、对所述待上链事务批次的多个所述待上链事务进行摘要运算,得到事务摘要;
39、将所述事务摘要和所述事务批次序号整合成所述事务索引。
40、可选地,所述区块链上链装置还包括事务保存单元和事务接收单元,多个所述待上链事务批次通过以下方式生成:
41、事务保存单元,用于响应于从客户端接收到所述待上链事务,将从所述客户端接收的所述待上链事务保存在所述第一共识节点对应的待上链事务批次中,并将所述待上链事务批次转发到所述第二共识节点;
42、事务接收单元,用于响应于从所述第二共识节点接收到所述待上链事务批次,将从所述第二共识节点接收的所述待上链事务批次进行保存。
43、可选地,所述事务保存单元具体用于:
44、获取多个所述待上链事务的时间戳;
45、基于所述时间戳的时间先后、和预定分批周期,将所述待上链事务保存在所述待上链事务批次中。
46、可选地,所述事务保存单元具体用于:
47、获取所述待上链事务的时间戳;
48、确定每个所述待上链事务批次的事务数目;
49、基于所述时间戳的时间先后、和所述事务数目,将所述待上链事务保存在所述待上链事务批次中。
50、可选地,所述区块链上链装置还包括同步单元,所述同步单元具体用于:
51、确定接收到的所述待上链事务批次的事务批次序号;
52、基于所述事务批次序号,确定排在所本文档来自技高网...
【技术保护点】
1.一种区块链上链方法,其特征在于,应用于区块链网络中的第一共识节点,所述区块链网络除了所述第一共识节点还包括第二共识节点,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述针对每个所述待上链事务批次,将所述待上链事务批次中的多个所述待上链事务的事务索引打包到预生成区块,包括:
3.根据权利要求1所述的方法,其特征在于,所述针对每个所述待上链事务批次,将所述待上链事务批次中的多个所述待上链事务的事务索引打包到预生成区块,包括:
4.根据权利要求1所述的方法,其特征在于,所述第二共识节点的事务池中存储有多个所述待上链事务批次;
5.根据权利要求4所述的方法,其特征在于,在所述向所述第一共识节点发送第一同步请求之后,所述方法还包括:
6.根据权利要求4所述的方法,其特征在于,所述确定从所述事务池中无法提取到与所述事务索引对应的所述待上链事务批次,包括:
7.根据权利要求1所述的方法,其特征在于,所述基于获取的多个所述待上链事务向所述第一共识节点进行共识反馈,包括:
8.根据权利要求1所述的
9.根据权利要求1所述的方法,其特征在于,多个所述待上链事务批次通过以下方式生成:
10.根据权利要求9所述的方法,其特征在于,所述将从所述客户端接收的所述待上链事务保存在所述第一共识节点对应的待上链事务批次中,包括:
11.根据权利要求9所述的方法,其特征在于,所述将从所述客户端接收的所述待上链事务保存在所述第一共识节点对应的待上链事务批次中,包括:
12.根据权利要求9所述的方法,其特征在于,在所述将从所述第二共识节点接收的所述待上链事务批次进行保存之后,所述方法还包括:
13.根据权利要求9所述的方法,其特征在于,所述将所述待上链事务批次转发到所述第二共识节点,包括:
14.根据权利要求13所述的方法,其特征在于,所述节点分数通过以下方式确定:
15.根据权利要求14所述的方法,其特征在于,所述出块状态包括节点处理能力、出块延迟;
16.根据权利要求14所述的方法,其特征在于,所述信用度包括事务确认信用度、出块信用度;
17.一种区块链上链装置,其特征在于,应用于区块链网络中的第一共识节点,所述区块链网络除了所述第一共识节点还包括第二共识节点,所述装置包括:
18.一种电子设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至16任意一项所述的区块链上链方法。
19.一种计算机可读存储介质,所述存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至16任意一项所述的区块链上链方法。
20.一种计算机程序产品,该计算机程序产品包括计算机程序,所述计算机程序被计算机设备的处理器读取并执行,使得该计算机设备执行权利要求1至16任意一项所述的区块链上链方法。
...【技术特征摘要】
1.一种区块链上链方法,其特征在于,应用于区块链网络中的第一共识节点,所述区块链网络除了所述第一共识节点还包括第二共识节点,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述针对每个所述待上链事务批次,将所述待上链事务批次中的多个所述待上链事务的事务索引打包到预生成区块,包括:
3.根据权利要求1所述的方法,其特征在于,所述针对每个所述待上链事务批次,将所述待上链事务批次中的多个所述待上链事务的事务索引打包到预生成区块,包括:
4.根据权利要求1所述的方法,其特征在于,所述第二共识节点的事务池中存储有多个所述待上链事务批次;
5.根据权利要求4所述的方法,其特征在于,在所述向所述第一共识节点发送第一同步请求之后,所述方法还包括:
6.根据权利要求4所述的方法,其特征在于,所述确定从所述事务池中无法提取到与所述事务索引对应的所述待上链事务批次,包括:
7.根据权利要求1所述的方法,其特征在于,所述基于获取的多个所述待上链事务向所述第一共识节点进行共识反馈,包括:
8.根据权利要求1所述的方法,其特征在于,所述事务索引通过以下方式生成:
9.根据权利要求1所述的方法,其特征在于,多个所述待上链事务批次通过以下方式生成:
10.根据权利要求9所述的方法,其特征在于,所述将从所述客户端接收的所述待上链事务保存在所述第一共识节点对应的待上链事务批次中,包括:
11.根据权利要求9所述的...
【专利技术属性】
技术研发人员:刘区城,
申请(专利权)人:腾讯科技深圳有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。