一种适用于多节点区块链系统的性能测试方法及装置制造方法及图纸

技术编号:37983398 阅读:8 留言:0更新日期:2023-06-30 09:58
本发明专利技术公开了一种适用于多节点区块链系统的性能测试方法及装置,区块链系统设有区块链网络,区块链网络包括依次相连的N个区块链节点,N为大于2的自然数。可以将交易数据发送至第一区块链节点;接着,接收第N区块链节点返回的交易反馈;然后,获取“将交易数据发送至第一区块链节点”至“接收第N区块链节点返回的交易反馈”过程中的测试数据;根据测试数据,得到测试结果。由于区块链网络中的N个区块链节点具有排列顺序,第一区块链节点为排列顺序第一的区块链节点,交易数据按照排列顺序依次传送到区块链网络中各个区块链节点,不同时间点发送的交易数据可在多个区块链节点中同时执行,从而提高区块链系统性能测试的效率。从而提高区块链系统性能测试的效率。从而提高区块链系统性能测试的效率。

【技术实现步骤摘要】
一种适用于多节点区块链系统的性能测试方法及装置


[0001]本专利技术涉及区块链系统的测试
,尤其涉及一种适用于多节点区块链系统的性能测试方法及装置。

技术介绍

[0002]目前,区块链性能测试方案主要是基于集中化的平台进行压力测试,通过一个客户端向区块链系统发送压力并计算测试结果,随着区块链技术的发展,区块链系统性能不断提升,单节点发压存在单点压力瓶颈问题,单节点发压在效率上,无法进一步得到提升。
[0003]本申请可以实现发压能力的横向扩展,同时对多个区块链节点发压,可以提升性能测试效率。

技术实现思路

[0004]本专利技术提供一种适用于多节点区块链系统的性能测试方法及装置,应用于区块链系统,所述区块链系统设有区块链网络,所述区块链网络包括N个区块链节点,N为大于2的自然数,由于所述交易数据按照排列顺序依次传送到所述区块链网络中各个所述区块链节点,从而不同时间点发送的交易数据可在多个所述区块链节点中同时执行,进而提高区块链系统性能测试的效率。
[0005]第一方面,本专利技术提供了一种适用于多节点区块链系统的性能测试方法,应用于区块链系统,所述区块链系统设有区块链网络,所述区块链网络包括依次相连N个区块链节点,N为大于2的自然数,所述方法包括:
[0006]根据待测试数据生成交易数据;
[0007]将所述交易数据发送至第一区块链节点,其中,所述区块链网络中的N个所述区块链节点具有排列顺序,所述第一区块链节点为排列顺序第一的所述区块链节点,所述交易数据按照排列顺序依次传送到所述区块链网络中各个所述区块链节点;
[0008]接收第N区块链节点返回的交易反馈;
[0009]获取“将所述交易数据发送至第一区块链节点”至“接收第N区块链节点返回的交易反馈”过程中的测试数据;
[0010]根据所述测试数据,得到测试结果。
[0011]可选地,所述将所述交易数据发送至第一区块链节点,包括:
[0012]根据发压设置参数,从所述交易数据中确定目标交易数据;
[0013]持续向所述第一区块链节点发送所述目标交易数据,直至所述目标交易数据发送完毕或超过预设的发压持续时间。
[0014]可选地,所述根据待测试数据生成交易数据前,包括:
[0015]根据测试设置参数以及测试流程确定测试用例;其中,所述测试设置参数包括发压时间点、模拟并发量、交易数据数量、交易数据发送速度、交易执行逻辑、交易数据的存储量、接收压力的节点;
[0016]根据所述测试用例和所述多节点区块链系统确定测试工具;
[0017]将所述测试工具与所述多节点区块链系统连接。
[0018]可选地,所述将所述测试工具与所述多节点区块链系统连接,包括:
[0019]在所述区块链系统中搭建多个的所述区块链网络,多个所述区块链网络的所述区块链节点数量不同,且多个所述区块链网络的所述区块链节点数量呈梯度递减或递增;
[0020]将所述测试工具与所述区块链网络相连。
[0021]可选地,所述测试数据包括第一时间点t
send
、第二时间点t
recv
、单个节点交易数据数量n
recv
、单个节点交易总耗时t
all
、总交易数量n
conf
、以及总交易耗时T
ALL
、交易保存量n
send

[0022]其中,第一时间点t
send
为每次将所述交易数据发送至第一区块链节点的时间点;
[0023]第二时间点t
recv
为每次接收第N区块链节点返回的交易反馈的时间点;
[0024]单个节点交易总耗时t
all
为单个所述区块链节点第一笔交易数据发送至最后一笔交易数据接收到响应的耗时;
[0025]总交易数量n
conf
为所有区块链网络的总交易数量;
[0026]交易保存量n
send
为发生交易数据后,能保存在所有区块链网络的交易数据的量。
[0027]可选地,所述根据所述测试数据,得到测试结果包括:
[0028]根据所述第一时间点t
send
、第二时间点t
recv
、确定响应耗时TD,TD1、TD2...TD
n
标识n次给所述区块链网络发送所述交易数据的响应耗时,根据TD1、TD2...TD
n
确定n次交易的平均耗时以及最大耗时;
[0029]根据所述单个节点交易数据数量n
recv
和所述单个节点交易总耗时t
all
确定每秒区块链节点收到的交易数;
[0030]根据所述总交易数量n
conf
和所述总交易耗时T
ALL
确定所述区块链系统每秒确认的交易数量;
[0031]根据所述总交易数量n
conf
和交易保存量n
send
确定交易成功率;
[0032]根据所述平均耗时、所述最大耗时、所述每秒区块链节点收到的交易数、所述每秒确认的交易数量、以及所述交易成功率确定测试结果。
[0033]可选地,所述根据所述平均耗时、所述最大耗时、所述每秒区块链节点收到的交易数、所述每秒确认的交易数量、以及所述交易成功率确定测试结果,包括:
[0034]将所述平均耗时、所述最大耗时、所述每秒区块链节点收到的交易数、所述每秒确认的交易数量、以及所述交易成功率生成可视化的图,以展示所述测试结果。
[0035]第二方面,本申请提供了一种适用于多节点区块链系统的性能测试装置,其特征在于,所述装置包括:
[0036]发送单元,用于将所述交易数据发送至第一区块链节点,其中,所述区块链网络中的N个所述区块链节点具有排列顺序,所述第一区块链节点为排列顺序第一的所述区块链节点;
[0037]接收单元,用于接收第N区块链节点返回的交易反馈;其中,所述交易数据会按照所述排列顺序在各个所述区块链节点中执行;
[0038]获取单元,用于获取“将所述交易数据发送至第一区块链节点”至“接收第N区块链节点返回的交易反馈”过程中的测试数据;
[0039]分析单元,用于根据所述测试数据,得到测试结果;
[0040]控制单元,与所述发送单元、所述接收单元以及所述分析单元相连,用于控制所述发送单元、所述接收单元以及所述分析单元的运行。
[0041]可选地,所述装置还包括:
[0042]生成单元,用于根据待测试数据生成交易数据。
[0043]第三方面,本专利技术提供了一种电子设备,处理器;
[0044]用于存储所述处理器可执行指令的存储器;
[0045]所述处理器,用于从所述存储器中读取所述可执行指令,并执行所述指令以实现第一方面任一所述的方法。
[0046]本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种适用于多节点区块链系统的性能测试方法,应用于区块链系统,其特征在于,所述区块链系统设有区块链网络,所述区块链网络包括依次相连的N个区块链节点,N为大于2的自然数,所述方法包括:根据待测试数据生成交易数据;将所述交易数据发送至第一区块链节点;接收第N区块链节点返回的交易反馈;获取“将所述交易数据发送至第一区块链节点”至“接收第N区块链节点返回的交易反馈”过程中的测试数据;根据所述测试数据,得到测试结果;其中,所述区块链网络中的N个所述区块链节点具有排列顺序,所述第一区块链节点为排列顺序第一的所述区块链节点,所述交易数据按照排列顺序依次传送到所述区块链网络中各个所述区块链节点。2.根据权利要求1所述的适用于多节点区块链系统的性能测试方法,其特征在于,所述将所述交易数据发送至第一区块链节点,包括:根据发压设置参数,从所述交易数据中确定目标交易数据;持续向所述第一区块链节点发送所述目标交易数据,直至所述目标交易数据发送完毕或超过预设的发压持续时间。3.根据权利要求1所述的适用于多节点区块链系统的性能测试方法,其特征在于,所述根据待测试数据生成交易数据前,包括:根据测试设置参数以及测试流程确定测试用例;其中,所述测试设置参数包括发压时间点、模拟并发量、交易数据数量、交易数据发送速度、交易执行逻辑、交易数据的存储量、接收压力的节点;根据所述测试用例和所述多节点区块链系统确定测试工具;将所述测试工具与所述多节点区块链系统连接。4.根据权利要求3所述的适用于多节点区块链系统的性能测试方法,其特征在于,所述将所述测试工具与所述多节点区块链系统连接,包括:在所述区块链系统中搭建多个的所述区块链网络,多个所述区块链网络的所述区块链节点数量不同,且多个所述区块链网络的所述区块链节点数量呈梯度递减或递增;将所述测试工具与所述区块链网络相连。5.根据权利要求4所述的适用于多节点区块链系统的性能测试方法,其特征在于,所述测试数据包括第一时间点t
send
、第二时间点t
recv
、单个节点交易数据数量n
recv
、单个节点交易总耗时t
all
、总交易数量n
conf
、以及总交易耗时T
ALL
、交易保存量n
send
;其中,第一时间点t
send
为每次将所述交易数据发送至第一区块链节点的时间点;第二时间点t
recv
为每次接收第N区块链节点返回的交易反馈的时间点;单个节点交易总耗时t
all
为单个所述区块链节点第一笔交易数据发送至最后一笔交易数据接收到响应的耗时;总交易数量n
conf
为所有区块链网络的总交易数量;交易保存量n
s...

【专利技术属性】
技术研发人员:程阳庞伟伟张奕卉张立锋刘宾顾天瑶魏凯何宝宏
申请(专利权)人:中国信息通信研究院
类型:发明
国别省市:

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

1