CN109815098A - 区块链系统的性能测试方法、相应的装置及电子设备 - Google Patents

区块链系统的性能测试方法、相应的装置及电子设备 Download PDF

Info

Publication number
CN109815098A
CN109815098A CN201811533873.3A CN201811533873A CN109815098A CN 109815098 A CN109815098 A CN 109815098A CN 201811533873 A CN201811533873 A CN 201811533873A CN 109815098 A CN109815098 A CN 109815098A
Authority
CN
China
Prior art keywords
catenary system
block catenary
block
total degree
performance
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201811533873.3A
Other languages
English (en)
Inventor
姚黎明
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
OneConnect Smart Technology Co Ltd
Original Assignee
OneConnect Smart Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by OneConnect Smart Technology Co Ltd filed Critical OneConnect Smart Technology Co Ltd
Priority to CN201811533873.3A priority Critical patent/CN109815098A/zh
Publication of CN109815098A publication Critical patent/CN109815098A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

本申请提供了一种区块链系统的性能测试方法、相应的装置及电子设备。该方法包括:通过智能合约获取区块链系统的请求参数,并基于请求参数运行区块链系统;获取区块链系统运行过程中的预定指标数据,确定区块链系统的性能瓶颈;和/或,在区块链系统运行完成后,获取区块链系统中调用请求的总次数以及区块链系统运行的总时间,并根据总次数和总时间确定区块链系统的吞吐量。本申请通过智能合约来定制区块链系统的请求参数,并基于请求参数运行区块链系统,进而可以依据区块链系统的运行来测试区块链系统的性能瓶颈和/或吞吐量,以便了解区块链系统底层的性能情况,便于区块链系统的开发与维护。

Description

区块链系统的性能测试方法、相应的装置及电子设备
技术领域
本申请涉及区块链技术领域,具体而言,本申请涉及一种区块链系统的性能测试方法、相应的装置及电子设备。
背景技术
区块链技术是一种以大数据共享理论为基础的现代互联网技术,被认为是继大型机、个人电脑等之后又一计算模式的颠覆式创新,将可能在全球范围引起新的技术和产业革新。不少国际组织和国家也对区块链的发展给予高度关注,可见其未来所具有的极大发展机遇。目前,区块链的应用已延伸到物联网、制造、医疗、教育、传媒等多个领域。
现如今,区块链底层系统面临着不断拓展应用的潜在需求,这就意味需要迫切了解区块链底层系统的性能情况。譬如一个区块链系统对一定的硬件配置及软件平台的适应性。
但由于区块链技术在我国的发展起步较晚,鉴于技术特点不明显、理论体系不完善等原因,在对区块链底层系统的性能测试方面仍相对薄弱。市面上至今没有一款能用来测试区块链底层系统性能的工具,虽然存在商业工具或开源工具可以对服务器、网络或对象等测试它们的强度和分析整体性能,却都不支持对区块链系统的测试。如何测试区块链底层系统的性能成为亟需解决的技术难题。
发明内容
为克服上述技术问题或者至少部分地解决上述技术问题,特提出以下技术方案:
第一方面,本申请提供了一种区块链系统的性能测试方法,该方法包括:
通过智能合约获取区块链系统的请求参数,并基于所述请求参数运行所述区块链系统;
获取所述区块链系统运行过程中的预定指标数据,确定所述区块链系统的性能瓶颈;和/或,
在所述区块链系统运行完成后,获取所述区块链系统中调用请求的总次数以及所述区块链系统运行的总时间,并根据所述总次数和所述总时间确定所述区块链系统的吞吐量。
在一种可选的实现方式中,所述预定指标数据包括以下至少一项:
正准备背书的数量;
已背书完成但未将背书结果放入通道的数量;
已将背书完成的背书结果放入通道的数量;
正准备给排序节点发送背书结果的数量;
已完成给排序节点发送背书结果的数量。
在一种可选的实现方式中,获取所述区块链系统中调用请求的总次数,包括:
获取并发进行背书的线程的数量与每个线程中可进行背书的数量;
根据所述并发进行背书的线程的数量及所述每个线程中可进行背书的数量,确定所述总次数。
在一种可选的实现方式中,所述根据所述总次数和所述总时间确定所述区块链系统的吞吐量,包括:
根据所述总次数和所述总时间的商,确定所述吞吐量。
在一种可选的实现方式中,所述基于所述请求参数运行所述区块链系统,包括:
根据在预设的节点容器中输入的指令来启动所述区块链系统,并根据所述指令控制所述区块链系统基于所述请求参数运行。
在一种可选的实现方式中,所述获取所述区块链系统运行过程中的预定指标数据之后,还包括:
将所述预定指标数据通过所述节点容器进行展示;和/或,
所述获取所述区块链系统中调用请求的总次数以及所述区块链系统运行的总时间之后,还包括:
将所述总次数和所述总时间通过所述节点容器进行展示;和/或,
所述确定所述区块链系统的吞吐量之后,还包括:
将所述吞吐量通过所述节点容器进行展示。
在一种可选的实现方式中,在所述区块链系统运行完成后,还包括:
通过所述节点容器中接收预定义的指令;
根据所述预定义的指令,对相应的所述区块链系统的参数信息通过所述节点容器进行展示。
第二方面,本申请提供了一种区块链系统的性能测试装置,该装置包括:
运行模块,用于通过智能合约获取区块链系统的请求参数,并基于所述请求参数运行所述区块链系统;
性能确定模块,用于获取所述区块链系统运行过程中的预定指标数据,确定所述区块链系统的性能瓶颈;和/或,在所述区块链系统运行完成后,获取所述区块链系统中调用请求的总次数以及所述区块链系统运行的总时间,并根据所述总次数和所述总时间确定所述区块链系统的吞吐量。
在一种可选的实现方式中,预定指标数据包括以下至少一项:
正准备背书的数量;
已背书完成但未将背书结果放入通道的数量;
已将背书完成的背书结果放入通道的数量;
正准备给排序节点发送背书结果的数量;
已完成给排序节点发送背书结果的数量。
在一种可选的实现方式中,性能确定模块具体用于获取并发进行背书的线程的数量与每个线程中可进行背书的数量;
以及,性能确定模块具体用于根据所述并发进行背书的线程的数量及所述每个线程中可进行背书的数量,确定所述总次数。
在一种可选的实现方式中,性能确定模块具体用于根据所述总次数和所述总时间的商,确定所述吞吐量。
在一种可选的实现方式中,运行模块具体用于根据在预设的节点容器中输入的指令来启动所述区块链系统,并根据所述指令控制所述区块链系统基于所述请求参数运行。
在一种可选的实现方式中,性能确定模块还用于将所述预定指标数据通过所述节点容器进行展示;
和/或,性能确定模块还用于将所述总次数和所述总时间通过所述节点容器进行展示;
和/或,性能确定模块还用于将所述吞吐量通过所述节点容器进行展示。
在一种可选的实现方式中,性能确定模块还用于通过所述节点容器中接收预定义的指令;
以及,性能确定模块还用于根据所述预定义的指令,对相应的所述区块链系统的参数信息通过所述节点容器进行展示。
第三方面,本申请提供了一种电子设备,该电子设备包括:
处理器和存储器,存储器存储有至少一条指令、至少一段程序、代码集或指令集,至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行以实现如本申请的第一方面所示的方法。
第四方面,本申请提供了一种计算机可读存储介质,计算机存储介质用于存储计算机指令、程序、代码集或指令集,当其在计算机上运行时,使得计算机执行如本申请的第一方面所示的方法。
本申请提供的技术方案带来的有益效果是:本申请提供的区块链系统的性能测试方法、相应的装置及电子设备,通过智能合约来定制区块链系统的请求参数,并基于请求参数运行区块链系统,进而可以依据区块链系统的运行来测试区块链系统的性能瓶颈和/或吞吐量,以便了解区块链系统底层的性能情况,便于区块链系统的开发与维护。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对本申请实施例描述中所需要使用的附图作简单地介绍。
图1为本申请实施例提供的一种区块链系统的性能测试方法的流程示意图;
图2为本申请实施例提供的一种区块链系统的性能测试装置的结构示意图;
图3为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能解释为对本申请的限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本申请的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图,以具体地实施例对本申请的技术方案进行详细说明。
本申请实施例提供了一种区块链系统的性能测试方法,如图1所示,该方法包括:
步骤S101、通过智能合约获取区块链系统的请求参数,并基于请求参数运行区块链系统;
步骤S102、获取区块链系统运行过程中的预定指标数据,确定区块链系统的性能瓶颈;和/或,在区块链系统运行完成后,获取区块链系统中调用请求的总次数以及区块链系统运行的总时间,并根据总次数和总时间确定区块链系统的吞吐量;
本申请实施例提供的区块链系统的性能测试方法,通过智能合约来定制区块链系统的请求参数,并基于请求参数运行区块链系统,进而可以依据区块链系统的运行来测试区块链系统的性能瓶颈和/或吞吐量,以便了解区块链系统底层的性能情况,便于区块链系统的开发与维护。
实际应用中,本申请实施例提供的区块链系统的性能测试方法可以基于go语言实现。对于区块链底层系统领域而言,go语言相较于大多数其它语言有着更高的开发效率,其可以提供大量并行的支持,实现稳定高效的区块链系统的性能测试方案。
一种可行的实现方式中,步骤S101中,调用智能合约的方式,可以是安装和实例化对应的chaincode(链码),以获取执行该智能合约的区块链系统的请求参数。
借助智能合约,可以安全地应用规则来运行区块链系统。且运行步骤自动化,以加快测试速度并发挥自动化的潜力。
对于本申请实施例,步骤S101中基于请求参数运行区块链系统,包括:
根据在预设的节点容器中输入的指令来启动区块链系统,并根据指令控制区块链系统基于请求参数运行。
以命令的方式启动运行区块链系统,使得整个测试过程更加轻量级。
其中,节点容器的预设过程为:加入peer lic(节点容器的客户端界面)及peer的镜像(节点容器的镜像),依此区块链系统便可使用该界面和该镜像启动节点容器的功能,进而可以进入该节点容器以命令的形式执行对区块链系统的性能测试。
具体而言,基于请求参数运行区块链系统的实现原理如下所示:
区块链系统会启动多个线程(goroutine);所有线程可以并发地调用背书节点(Endorser)进行背书(endorse),其中,每个线程调用一个背书节点,每个背书节点可以进行多次背书,也就说,每个线程中可以包含多次背书;将所有背书结果写入通道(gochannel)中。
通过广播客户端(Broadcast client)建立多个到排序节点(orderer)的连接,每个连接都放到一个单独的线程中,所有线程可以并发地从通道中读取背书结果,每个线程均可以读取多个背书结果,分别发给对应的排序节点进行排序提交。
所有节点的请求执行完成后,区块链系统即运行完成。
对于本申请实施例,步骤S102中,区块链系统运行过程中会自动地记录预定指标数据,包括但不限于以下至少一项:
正准备背书的数量(BeforeEndorsing);
已背书完成但未将背书结果放入通道的数量(AfterEndorsing);
已将背书完成的背书结果放入通道的数量(SentToOrder);
正准备给排序节点发送背书结果的数量(BeforeOrdering);
已完成给排序节点发送背书结果的数量(AfterOrdering)。
这些预定指标数据是用来监测和指示区块链底层熊随时间推移的性能瓶颈的度量功能,本申请实施例中,记录的预定指标数据可以进行存储,以及实际应用中,可以将预定指标数据通过节点容器进行展示。
例如,可以基于区块链系统的运行将预定指标数据在节点容器的客户端界面中动态地显示。
通过这些预定指标数据的动态变化,可以看出区块链系统运行过程中哪个过程的处理速度较慢,以确定出区块链系统的性能瓶颈。进而,将此作为诊断区块链系统性能的依据,可以有效、准确的反映出区块链底层系统产生的性能问题。
由上述内容可知,所有节点的请求执行完成后,区块链系统即运行完成。这时候,便可获取区块链系统的参数信息。
实际应用中,可以通过节点容器来执行一些自定义的命令来对参数信息进行显示;
作为示例地,可以采用的命令使用方法如下:
peer chaincode runbench[flags]
Flags:
-C---通道名
-n---智能合约名
-c---智能合约的请求参数
-o---排序节点的ip地址和/或请求端口
-T---并发进行背书的线程的数量(为方便描述,下文中以T表示)
-R---每个线程中可进行背书的数量(为方便描述,下文中以R表示)
-B---连接到排序节点的连接数,即并发向排序节点提交背书结果的线程的数量
实际应用中,可以通过节点容器中接收预定义的指令,即上述自定义的命令,并根据预定义的指令,对相应的区块链系统的参数信息通过节点容器进行展示。
作为示例地,当通过节点容器接收到参数n相关的指令时,通过节点容器展示智能合约名相关的参数信息。当通过节点容器接收到参数B相关的指令时,通过节点容器展示连接到排序节点的连接数,即并发向排序节点提交背书结果的线程的数量相关的参数信息。本领域技术人员可以根据实际应用情况基于以上范例进行适当扩展,也可适用于本申请,故也应包含在本申请的保护范围内。
对于本申请实施例,在步骤S103中,在区块链系统运行完成后,即所有节点的请求执行完成后,可以记录区块链系统中调用请求的总次数(为方便描述,下文中以N表示)以及区块链系统运行的总时间(为方便描述,下文中以S表示)。
一种可行的实现方式中,步骤S103的获取区块链系统中调用请求的总次数可以包括步骤S1031(图中未示出)和步骤S1032(图中未示出),其中,
步骤S1031,获取并发进行背书的线程的数量与每个线程中可进行背书的数量。
其中,并发进行背书的线程的数量即参数T指定的参数信息;
每个线程中可进行背书的数量即参数R指定的参数信息;
实际应用中,可以在获取到并发进行背书的线程的数量T与每个线程中可进行背书的数量R之后,直接通过节点容器进行显示。
或者,可以通过节点容器中接收参数T相关的指令,以通过节点容器展示并发进行背书的线程的数量相关的参数信息;
以及,通过节点容器中接收参数R相关的指令,以通过节点容器展示每个线程中可进行背书的数量相关的参数信息。
或者,获取的并发进行背书的线程的数量与每个线程中可进行背书的数量不在节点容器中进行展示,直接执行步骤S1032。
步骤S1032,根据并发进行背书的线程的数量及每个线程中可进行背书的数量,确定总次数。
具体而言,调用请求的总次数N即为参数T指定的并发进行背书的线程的数量T与参数R指定的每个线程中可进行背书的数量R的乘积,即
N=T*R
一种可选的实现方式中,可以在区块链系统运行完成时,在显示最后一个预定指标数据AfterOrdering之后,直接显示调用请求的总次数N。
或者,在节点容器中接收到相关的指令后,通过节点容器展示调用请求的总次数N。
或者,获取的调用请求的总次数N可以不在节点容器中进行展示,直接用来计算区块链系统的吞吐量。
同理地,步骤S103的获取区块链系统运行的总时间,可以在区块链系统运行完成时,在显示最后一个预定指标数据AfterOrdering之后,直接进行显示。
或者,在节点容器中接收到相关的指令后,通过节点容器展示区块链系统运行的总时间S。
或者,获取的区块链系统运行的总时间S可以不在节点容器中进行展示,直接用来计算区块链系统的吞吐量。
本申请实施例中,根据总次数和总时间确定TPS(Transaction Per Second,每秒事务处理量)值(为方便描述,下文中以X表示),即区块链系统的吞吐量,其可以有效衡量区块链系统的处理性能,具体而言:
根据总次数N和总时间S的商,确定吞吐量X,即
X=N/S
另一种可选的实现方式中,可以在区块链系统运行完成时,在显示最后一个预定指标数据AfterOrdering之后,直接显示区块链系统的TPS值。
或者,在显示调用请求的总次数N和区块链系统运行的总时间S之后,直接显示区块链系统的TPS值。
或者,在节点容器中接收到相关的指令后,通过节点容器展示区块链系统的TPS值。
本申请实施例中,还可以根据确定出的区块链系统的性能瓶颈以及区块链系统的吞吐量来共同诊断区块链底层系统的性能。
作为示例地,可以为确定出的区块链系统的性能瓶颈以及确定出的区块链系统的吞吐量分别分配相应的权重,用来诊断区块链底层系统的性能,或者也可以采用其他分类定位方法来根据确定出的区块链系统的性能瓶颈以及区块链系统的吞吐量来共同诊断区块链底层系统的性能,本申请对此不作限定。
本申请实施例提供的区块链系统的性能测试方法,通过智能合约来定制区块链系统的请求参数,并基于请求参数运行区块链系统,进而可以依据区块链系统的运行来测试区块链系统的性能瓶颈和/或吞吐量,以便了解区块链系统底层的性能情况,便于区块链系统的开发与维护。
本申请实施例还提供了一种区块链系统的性能测试装置,如图2所示,该装置20可以包括:运行模块201和性能确定模块202,其中
运行模块201用于通过智能合约获取区块链系统的请求参数,并基于请求参数运行区块链系统;
性能确定模块202用于获取区块链系统运行过程中的预定指标数据,确定区块链系统的性能瓶颈;和/或,在区块链系统运行完成后,获取区块链系统中调用请求的总次数以及区块链系统运行的总时间,并根据总次数和总时间确定区块链系统的吞吐量。
可选地,预定指标数据包括以下至少一项:
正准备背书的数量;
已背书完成但未将背书结果放入通道的数量;
已将背书完成的背书结果放入通道的数量;
正准备给排序节点发送背书结果的数量;
已完成给排序节点发送背书结果的数量。
可选地,性能确定模块202具体用于获取并发进行背书的线程的数量与每个线程中可进行背书的数量;
以及,性能确定模块202具体用于根据并发进行背书的线程的数量及每个线程中可进行背书的数量,确定总次数。
可选地,性能确定模块202具体用于根据总次数和总时间的商,确定吞吐量。
可选地,运行模块201具体用于根据在预设的节点容器中输入的指令来启动区块链系统,并根据指令控制区块链系统基于请求参数运行。
可选地,性能确定模块202还用于将预定指标数据通过节点容器进行展示;
和/或,性能确定模块202还用于将总次数和总时间通过节点容器进行展示;
和/或,性能确定模块202还用于将吞吐量通过节点容器进行展示。
可选地,性能确定模块202还用于通过节点容器中接收预定义的指令;
以及,性能确定模块202还用于根据预定义的指令,对相应的区块链系统的参数信息通过节点容器进行展示。
本申请实施例提供的区块链系统的性能测试装置,通过智能合约来定制区块链系统的请求参数,并基于请求参数运行区块链系统,进而可以依据区块链系统的运行来测试区块链系统的性能瓶颈和/或吞吐量,以便了解区块链系统底层的性能情况,便于区块链系统的开发与维护。
所属领域的技术人员可以清楚地了解到,本申请实施例提供的区块链系统的性能测试装置,其实现原理及产生的技术效果和前述方法实施例相同,为描述的方便和简洁,装置实施例部分未提及之处,可参考前述方法实施例中相应内容,在此不再赘述。
本申请实施例还提供了一种电子设备,如图3所示,图3所示的电子设30包括:处理器301和存储器302,存储器302存储有至少一条指令、至少一段程序、代码集或指令集,该至少一条指令、至少一段程序、代码集或指令集由处理器301加载并执行以实现前述方法实施例中相应内容。
可选地,电子设备30还可以包括收发器303。处理器301和收发器303相连,如通过总线304相连。需要说明的是,实际应用中收发器303不限于一个,该电子设备30的结构并不构成对本申请实施例的限定。
其中,处理器301可以是CPU,通用处理器,DSP,ASIC,FPGA或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器301也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等。
总线304可包括一通路,在上述组件之间传送信息。总线304可以是PCI总线或EISA总线等。总线304可以分为地址总线、数据总线、控制总线等。为便于表示,图3中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
存储器302可以是ROM或可存储静态信息和指令的其他类型的静态存储设备,RAM或者可存储信息和指令的其他类型的动态存储设备,也可以是EEPROM、CD-ROM或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。
本申请实施例提供的电子设备,通过智能合约来定制区块链系统的请求参数,并基于请求参数运行区块链系统,进而可以依据区块链系统的运行来测试区块链系统的性能瓶颈和/或吞吐量,以便了解区块链系统底层的性能情况,便于区块链系统的开发与维护。
本申请实施例还提供了一种计算机可读存储介质,该计算机存储介质用于存储计算机指令,当其在计算机上运行时,使得计算机可以执行前述方法实施例中相应内容。
本申请实施例提供的计算机可读存储介质,通过智能合约来定制区块链系统的请求参数,并基于请求参数运行区块链系统,进而可以依据区块链系统的运行来测试区块链系统的性能瓶颈和/或吞吐量,以便了解区块链系统底层的性能情况,便于区块链系统的开发与维护。
应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
以上所述仅是本申请的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。

Claims (10)

1.一种区块链系统的性能测试方法,其特征在于,包括:
通过智能合约获取区块链系统的请求参数,并基于所述请求参数运行所述区块链系统;
获取所述区块链系统运行过程中的预定指标数据,确定所述区块链系统的性能瓶颈;和/或,
在所述区块链系统运行完成后,获取所述区块链系统中调用请求的总次数以及所述区块链系统运行的总时间,并根据所述总次数和所述总时间确定所述区块链系统的吞吐量。
2.根据权利要求1所述的性能测试方法,其特征在于,所述预定指标数据包括以下至少一项:
正准备背书的数量;
已背书完成但未将背书结果放入通道的数量;
已将背书完成的背书结果放入通道的数量;
正准备给排序节点发送背书结果的数量;
已完成给排序节点发送背书结果的数量。
3.根据权利要求1所述的性能测试方法,其特征在于,获取所述区块链系统中调用请求的总次数,包括:
获取并发进行背书的线程的数量与每个线程中可进行背书的数量;
根据所述并发进行背书的线程的数量及所述每个线程中可进行背书的数量,确定所述总次数。
4.根据权利要求1所述的性能测试方法,其特征在于,所述根据所述总次数和所述总时间确定所述区块链系统的吞吐量,包括:
根据所述总次数和所述总时间的商,确定所述吞吐量。
5.根据权利要求1-4任一项所述的性能测试方法,其特征在于,所述基于所述请求参数运行所述区块链系统,包括:
根据在预设的节点容器中输入的指令来启动所述区块链系统,并根据所述指令控制所述区块链系统基于所述请求参数运行。
6.根据权利要求5所述的性能测试方法,其特征在于,所述获取所述区块链系统运行过程中的预定指标数据之后,还包括:
将所述预定指标数据通过所述节点容器进行展示;和/或,
所述获取所述区块链系统中调用请求的总次数以及所述区块链系统运行的总时间之后,还包括:
将所述总次数和所述总时间通过所述节点容器进行展示;和/或,
所述确定所述区块链系统的吞吐量之后,还包括:
将所述吞吐量通过所述节点容器进行展示。
7.根据权利要求5所述的性能测试方法,其特征在于,在所述区块链系统运行完成后,还包括:
通过所述节点容器中接收预定义的指令;
根据所述预定义的指令,对相应的所述区块链系统的参数信息通过所述节点容器进行展示。
8.一种区块链系统的性能测试装置,其特征在于,包括:
运行模块,用于通过智能合约获取区块链系统的请求参数,并基于所述请求参数运行所述区块链系统;
性能确定模块,用于获取所述区块链系统运行过程中的预定指标数据,确定所述区块链系统的性能瓶颈;和/或,在所述区块链系统运行完成后,获取所述区块链系统中调用请求的总次数以及所述区块链系统运行的总时间,并根据所述总次数和所述总时间确定所述区块链系统的吞吐量。
9.一种电子设备,其特征在于,包括:处理器和存储器,
所述存储器存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如权利要求1-7任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机存储介质用于存储计算机指令、程序、代码集或指令集,当其在计算机上运行时,使得计算机执行如权利要求1-7任一项所述的方法。
CN201811533873.3A 2018-12-14 2018-12-14 区块链系统的性能测试方法、相应的装置及电子设备 Pending CN109815098A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811533873.3A CN109815098A (zh) 2018-12-14 2018-12-14 区块链系统的性能测试方法、相应的装置及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811533873.3A CN109815098A (zh) 2018-12-14 2018-12-14 区块链系统的性能测试方法、相应的装置及电子设备

Publications (1)

Publication Number Publication Date
CN109815098A true CN109815098A (zh) 2019-05-28

Family

ID=66602088

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811533873.3A Pending CN109815098A (zh) 2018-12-14 2018-12-14 区块链系统的性能测试方法、相应的装置及电子设备

Country Status (1)

Country Link
CN (1) CN109815098A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110543407A (zh) * 2019-08-21 2019-12-06 杭州趣链科技有限公司 一种Solidity智能合约性能静态分析方法
CN110580206A (zh) * 2019-09-16 2019-12-17 上海保险交易所股份有限公司 用于区块链系统的压力测试的方法、介质和控制装置
CN112073254A (zh) * 2019-06-11 2020-12-11 南京慕测信息科技有限公司 一种面向以太坊区块链的性能测试方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106598824A (zh) * 2016-11-25 2017-04-26 深圳前海微众银行股份有限公司 区块链的性能分析方法及装置
US20180101560A1 (en) * 2016-10-07 2018-04-12 International Business Machines Corporation Establishing overlay trust consensus for blockchain trust validation system
CN108667614A (zh) * 2018-04-19 2018-10-16 上海分布信息科技有限公司 一种拜占庭容错方法及其实现系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180101560A1 (en) * 2016-10-07 2018-04-12 International Business Machines Corporation Establishing overlay trust consensus for blockchain trust validation system
CN106598824A (zh) * 2016-11-25 2017-04-26 深圳前海微众银行股份有限公司 区块链的性能分析方法及装置
CN108667614A (zh) * 2018-04-19 2018-10-16 上海分布信息科技有限公司 一种拜占庭容错方法及其实现系统

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112073254A (zh) * 2019-06-11 2020-12-11 南京慕测信息科技有限公司 一种面向以太坊区块链的性能测试方法
CN110543407A (zh) * 2019-08-21 2019-12-06 杭州趣链科技有限公司 一种Solidity智能合约性能静态分析方法
CN110580206A (zh) * 2019-09-16 2019-12-17 上海保险交易所股份有限公司 用于区块链系统的压力测试的方法、介质和控制装置

Similar Documents

Publication Publication Date Title
Washizaki et al. Studying software engineering patterns for designing machine learning systems
Lane et al. Automated selection of robust individual-level structural equation models for time series data
Van Der Aalst Process mining
Kloppenborg et al. Project success and executive sponsor behaviors: Empirical life cycle stage investigations
CN110443573A (zh) 审批管理平台及其审批方法、工作流生成方法
CN109815098A (zh) 区块链系统的性能测试方法、相应的装置及电子设备
US10552296B2 (en) Human-readable, language-independent stack trace summary generation
CN108021505A (zh) 数据上线方法、装置和计算机设备
TW201734841A (zh) 分布式環境下監督學習算法的基準測試方法和裝置
CN107391142A (zh) 一种应用拆分的方法及装置
CN108647104A (zh) 请求处理方法、服务器及计算机可读存储介质
US20100121668A1 (en) Automated compliance checking for process instance migration
CN108536592A (zh) 一种测试任务分派方法、装置及服务器
Peças et al. Pdca 4.0: A new conceptual approach for continuous improvement in the industry 4.0 paradigm
EP4330947A1 (en) Systems and methods for automated generation of passage-based items for use in testing or evaluation
CN104321753B (zh) 用于呈现监测资源的使用量的方法、计算装置以及其上记录有用于执行的程序的记录介质
CN110334013A (zh) 决策引擎的测试方法、装置及电子设备
Mikhail et al. A model of continuous integration and deployment of engineering software
US11574730B2 (en) Data management system, data management method, and recording medium for data management program
CN110334011B (zh) 一种执行测试用例的方法及装置
Harish et al. Productivity improvement by application of simulation and lean approaches in an multimodel assembly line
CN109960654A (zh) 定损规则的测试方法、装置、设备及存储介质
Yorkston et al. Performance Testing
CN108198474A (zh) 一种学习数据生成方法、装置及设备
Pospiech et al. Towards a big data theory model

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20190528

WD01 Invention patent application deemed withdrawn after publication