本发明涉及区块链,尤其涉及一种区块链交易同步方法、装置及存储介质、控制器、产品。
背景技术:
1、采用p2p协议实现区块链交易和区块的同步时,需要定期同步交易池中未被打包的交易。其中,在进行交易同步时,相关技术采用某种确定规则对待同步交易排序,代码逻辑复杂,业务逻辑很难判断需要广播哪些交易。
技术实现思路
1、本发明旨在至少在一定程度上解决相关技术中的技术问题之一。为此,本发明的一个目的在于提出一种区块链交易同步方法,在减少代码实现复杂度的同时,还可减少交易广播数量。
2、本发明的第二个目的在于提出一种区块链交易同步装置。
3、本发明的第三个目的在于提出一种计算机可读存储介质。
4、本发明的第四个目的在于提出一种控制器。
5、本发明的第五个目的在于提出一种计算机程序产品。
6、为达到上述目的,本发明第一方面实施例提出一种区块链交易同步方法,所述方法包括:确定交易池中当前轮的待同步交易;计算所述待同步交易距离其上一次被广播的间隔时间;若所述间隔时间大于预设时间阈值,则对所述待同步交易进行广播;若所述间隔时间小于或等于所述预设时间阈值,则利用预先训练好的分类模型根据所述待同步交易的交易特征得到所述待同步交易的类别,并在根据所述类别确定对所述待同步交易进行广播时,对所述待同步交易进行广播。
7、根据本发明实施例的区块链交易同步方法,根据交易池中待同步交易距离其上一次被广播的间隔时间判断是否对待同步交易进行广播,并在其对应的间隔时间大于预设时间阈值时,利用预先训练好的分类模型根据待同步交易的交易特征,判断等待同步的交易是否需要广播,在减少代码实现复杂度的同时,还可减少交易广播数量。
8、另外,根据本发明上述实施例提出的区块链交易同步方法还可以具有如下附加的技术特征:
9、根据本发明的一个实施例,所述分类模型的训练过程,包括:获取样本数据集,所述样本数据集中包括多条交易样本,所述交易样本包括交易特征和标注标签;对所述样本数据集进行划分,得到训练样本数据集和测试样本数据集;建立预训练分类模型;利用所述训练样本数据集对所述预训练分类模型进行训练,并利用测试样本数据集对训练后的分类模型进行测试;在测试结果满足预设条件时,得到所述预先训练好的分类模型。
10、根据本发明的一个实施例,所述交易特征至少包括交易池来源、本地节点区块最新间隔时间戳、本地节点最高区块号、区块链中最高区块间隔时间戳、区块链中最高区块号、交易生成间隔时间、交易进入交易池间隔时间戳、交易同步次数、区块链节点总数、p2p当前节点链接到其他节点数量和上次交易发送间隔时间中的一者。
11、根据本发明的一个实施例,所述标注标签包括正样本和负样本,所述获取样本数据集,包括:根据所述交易样本的交易特征,判定所述交易样本存在交易池,或所述交易样本已经形成区块,将所述交易样本对应的标注标签标记为负样本;根据所述交易样本的交易特征,判定所述交易样本为第一次交易同步,或所述交易样本距离第一次进入交易池的时间大于预设时间,或所述交易样本对应的传播路径中存在目标节点,将所述交易样本对应的标注标签标记为正样本。
12、根据本发明的一个实施例,所述根据所述类别确定对所述待同步交易进行广播,包括:若所述类别为正样本,则确定对所述待同步交易进行广播;若所述类别为负样本,则确定不对所述待同步交易进行广播。
13、根据本发明的一个实施例,所述确定交易池中当前轮的待同步交易,包括:统计所述交易池中待同步交易的交易数量,若所述交易数量大于预设数量阈值,则根据交易同步点从所述交易池获取目标数量的待同步交易确定所述当前轮的待同步交易,并更新所述交易同步点;若所述交易数量小于等于预设数量阈值,则根据交易同步点将所述交易池中的待同步交易作为当前轮的待同步交易,并将所述交易同步点更新为空。
14、为达到上述目的,本发明第二方面实施例提出了一种区块链交易同步装置,所述装置包括:获取模块,用于确定交易池中当前轮的待同步交易;同步模块,用于计算所述待同步交易距离上一轮广播的间隔时间,若所述间隔时间大于预设时间阈值,则对所述待同步交易进行广播,若所述间隔时间小于或等于预设时间阈值,则利用预先训练好的分类模型根据所述待同步交易的交易特征得到所述待同步交易的类别,并在根据所述类别确定对所述待同步交易进行广播时,对所述待同步交易进行广播。
15、为达到上述目的,本发明第三方面实施例提出了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,实现如本发明第一方面实施例提出的区块链交易同步方法。
16、为达到上述目的,本发明第四方面实施例提出了一种控制器,包括存储器、处理器,所述存储器上存储有计算机程序,所述计算机程序被所述处理器执行时,实现如本发明第一方面实施例提出的区块链交易同步方法。
17、为达到上述目的,本发明第五方面实施例提出了一种计算机程序产品,当所述计算机程序产品在电子设备上运行时,使得所述电子设备执行如本发明第一方面实施例提出的区块链交易同步方法。
18、本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
1.一种区块链交易同步方法,其特征在于,所述方法包括:
2.根据权利要求1所述的区块链交易同步方法,其特征在于,所述分类模型的训练过程,包括:
3.根据权利要求2所述的区块链交易同步方法,其特征在于,所述交易特征至少包括交易池来源、本地节点区块最新间隔时间戳、本地节点最高区块号、区块链中最高区块间隔时间戳、区块链中最高区块号、交易生成间隔时间、交易进入交易池间隔时间戳、交易同步次数、区块链节点总数、p2p当前节点链接到其他节点数量和上次交易发送间隔时间中的一者。
4.根据权利要求3所述的区块链交易同步方法,其特征在于,所述标注标签包括正样本和负样本,所述获取样本数据集,包括:
5.根据权利要求1所述的区块链交易同步方法,其特征在于,所述根据所述类别确定对所述待同步交易进行广播,包括:
6.根据权利要求1所述的区块链交易同步方法,其特征在于,所述确定交易池中当前轮的待同步交易,包括:
7.一种区块链交易同步装置,其特征在于,所述装置包括:
8.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时,实现如权利要求1-6中任一项所述的区块链交易同步方法。
9.一种控制器,包括存储器、处理器,所述存储器上存储有计算机程序,其特征在于,所述计算机程序被所述处理器执行时,实现如权利要求1-6中任一项所述的区块链交易同步方法。
10.一种计算机程序产品,其特征在于,当所述计算机程序产品在电子设备上运行时,使得所述电子设备执行如权利要求1-6中任一项所述的区块链交易同步方法。
