The embodiment of the present invention discloses a Jmeter-based gRPC performance testing method and device. The method includes: defining a channel to send a Google remote procedure call gRPC request, constructing a gRPC request according to the channel, and sending the gRPC request to the gRPC server; creating a data object of the gRPC service corresponding to the gRPC request, and importing the data object according to the gRPC request. Line assignment; Receive the performance test results returned by the gRPC server after performance test according to the gRPC request, process the performance test results according to the data object after assignment, and display the performance test results after processing based on Jmeter. By sending gRPC requests to gRPC server, receiving the performance test results returned by gRPC server after performance test, and displaying the performance test results after processing based on Jmeter, the script development time of performance test is greatly reduced, and the concurrent stability is guaranteed, as well as the friendly presentation of the results through Jmeter's own statistics.
【技术实现步骤摘要】
一种基于Jmeter的gRPC性能测试方法及装置
本专利技术实施例涉及计算机
,具体涉及一种基于Jmeter的gRPC性能测试方法及装置。
技术介绍
目前分布式的应用场景中,存在着大量的服务之间的调用,微服务的发现以及跨服务的远程调用,更多的使用了RPC(RemoteProcedureCall,远程过程调用)技术。以Google为代表的gRPC(googleRemoteProcedureCall,谷歌远程过程调用),在行业内使用非常广泛,更多的后台服务都应用了gRPC的技术。所以对于gRPC请求的单独的性能测试做benchmark(基准)的场景也会很多,但是现在的性能测试,无论开发还是测试,更多是直接编码通过脚本的方式获得对应的性能数据,无法通过界面化的工具,如LoadRunner和Jmeter那样直接构造批量请求,并自动分析结果,出来各种比较可观的统计图。现有技术直接通过编码的方式去模拟发送请求,得到的结果自己去分析统计,但是通过脚本构造gRPC请求并自己实现对应的并发,以及结果的统计比较耗时,而且无法短时间内保证脚本的并发的稳定性;同时对于分布式压测支持也需要重新开发,无法界面化直观的得到对应的性能测试数据。
技术实现思路
由于现有方法存在上述问题,本专利技术实施例提出一种基于Jmeter的gRPC性能测试方法及装置。第一方面,本专利技术实施例提出一种基于Jmeter的gRPC性能测试方法,包括:定义发送谷歌远程过程调用gRPC请求的通道,根据所述通道构造gRPC请求,并将所述gRPC请求发送给gRPC服务器;创建所述gRPC请求对应的gRPC业务的 ...
【技术保护点】
1.一种基于Jmeter的gRPC性能测试方法,其特征在于,包括:定义发送谷歌远程过程调用gRPC请求的通道,根据所述通道构造gRPC请求,并将所述gRPC请求发送给gRPC服务器;创建所述gRPC请求对应的gRPC业务的数据对象,并根据所述gRPC请求对所述数据对象进行赋值;接收所述gRPC服务器根据所述gRPC请求进行性能测试后返回的性能测试结果,根据赋值后的数据对象对所述性能测试结果进行处理,并基于Jmeter对处理后的性能测试结果进行展示。
【技术特征摘要】
1.一种基于Jmeter的gRPC性能测试方法,其特征在于,包括:定义发送谷歌远程过程调用gRPC请求的通道,根据所述通道构造gRPC请求,并将所述gRPC请求发送给gRPC服务器;创建所述gRPC请求对应的gRPC业务的数据对象,并根据所述gRPC请求对所述数据对象进行赋值;接收所述gRPC服务器根据所述gRPC请求进行性能测试后返回的性能测试结果,根据赋值后的数据对象对所述性能测试结果进行处理,并基于Jmeter对处理后的性能测试结果进行展示。2.根据权利要求1所述的方法,其特征在于,所述定义发送谷歌远程过程调用gRPC请求的通道,根据所述通道构造gRPC请求,并将所述gRPC请求发送给gRPC服务器之后,还包括:根据预设格式对所述gRPC请求的数据串进行切分,得到符合所述预设格式的目标数据;相应地,所述创建所述gRPC请求对应的gRPC业务的数据对象,并根据所述gRPC请求对所述数据对象进行赋值,具体包括:创建所述gRPC请求对应的gRPC业务的数据对象,并根据所述目标数据对所述数据对象进行赋值。3.根据权利要求1所述的方法,其特征在于,所述方法还包括:根据预设关键字对所述性能测试结果进行校验,确定所述性能测试结果是否符合预期。4.根据权利要求3所述的方法,其特征在于,所述方法还包括:若所述性能测试结果不符合预期,则获取所述性能测试结果中的异常信息,并将所述异常信息进行显示。5.一种基于Jmeter的gRPC性能测试装置,其特征在于,包括:请求发送模块,用于定义发送谷歌远程过程调用gRPC请求的通道,根据所述通...
【专利技术属性】
技术研发人员:高强,荣震,郭海超,姚俊晓,
申请(专利权)人:北京奇安信科技有限公司,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。