System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种消息队列的压力测试方法、装置及存储介质制造方法及图纸_技高网

一种消息队列的压力测试方法、装置及存储介质制造方法及图纸

技术编号:40421856 阅读:5 留言:0更新日期:2024-02-20 22:41
本申请涉及测试技术领域,公开了一种消息队列的压力测试方法、装置及存储介质,方法包括:将测试信息发送至消息队列中的目标分区,并在多个预设采集时刻采集目标分区中偏移量的参数值,得到多个预设采集时刻对应的参数值;根据当前预设采集时刻对应的参数值和上一预设采集时刻对应的参数值,计算得到当前预设采集时刻目标分区对应的测试信息的写入速度和消费速度;根据写入速度和消费速度,确定出当前预设采集时刻目标分区的运行压力。本申请方法能准确反映出目标分区各个预设采集时刻的运行压力。其中,将测试信息写入目标分区的同时,目标分区也处于消费状态,能客观反映出真实运用场景中目标分区的运行压力。

【技术实现步骤摘要】

本申请涉及测试,具体涉及一种消息队列的压力测试方法、装置及存储介质


技术介绍

1、针对kafka(卡夫卡)消息队列进行压力测试,目前是直接将所有测试信息写入kafka消息队列中,并统计测试信息从开始消费到消费完毕所需时长,从而计算出该kafka消息队列的消费速度。

2、上述压力测试方式只能反映出消息队列的整体消费能力,无法反映目标分区的运行压力,在实际应用场景中,因为消息队列在消费的同时还会写入信息,所以上述压力测试方式无法准确反映消息队列在实际运用场景中的运行压力。


技术实现思路

1、鉴于上述问题,本申请提供了一种消息队列的压力测试方法、装置及计算机可读存储介质,以反映多个时刻消息队列中目标分区对应的运行压力。

2、根据本申请实施例的一个方面,提供了一种消息队列的压力测试方法,所述压力测试方法包括:将测试信息发送至消息队列中的目标分区,并在多个预设采集时刻采集所述目标分区中偏移量的参数值,得到多个预设采集时刻对应的参数值;根据当前预设采集时刻对应的参数值和上一预设采集时刻对应的参数值,计算得到当前预设采集时刻所述目标分区对应的测试信息的写入速度和消费速度;根据所述写入速度和所述消费速度,确定出当前预设采集时刻所述目标分区的运行压力。

3、在一种可选的方式中,在所述将测试信息发送至消息队列中的目标分区之前,所述压力测试方法还包括:根据预设配置参数进行待测试信息的配置操作,并检测配置得到的待测试信息中是否包括替换标识;若包括,则将所述待测试信息中的替换标识替换为目标字段,以得到测试信息。

4、在一种可选的方式中,所述参数值包括所述测试信息的写入数量和消费数量;所述根据当前预设采集时刻对应的参数值和上一预设采集时刻对应的参数值,计算得到当前预设采集时刻所述目标分区对应的测试信息的写入速度和消费速度,进一步包括:根据当前预设采集时刻对应的写入数量和上一预设采集时刻对应的写入数量,计算得到写入数量差值;根据当前预设采集时刻与上一预设采集时刻之间的时长,以及所述写入数量差值,计算得到当前预设采集时刻所述目标分区对应的测试信息的写入速度;根据当前预设采集时刻对应的消费数量和上一预设采集时刻对应的消费数量,计算得到消费数量差值;根据当前预设采集时刻与上一预设采集时刻之间的时长,以及所述消费数量差值,计算得到当前预设采集时刻所述目标分区对应的测试信息的消费速度。

5、在一种可选的方式中,所述压力测试方法还包括:检测当前预设采集时刻对应的消费数量是否为零值;若为零值,则根据数据库中接收到的所述目标分区消费的消息数量和所述测试信息的数量,计算得到压力测试的成功率和/或失败率。

6、在一种可选的方式中,所述根据数据库中接收到的所述目标分区发送的消息数量和所述测试信息的数量,计算得到压力测试的成功率和/或失败率,进一步包括:将所述消息数量与所述测试信息的数量进行求商运算,并将计算得到的商值作为压力测试的成功率;和/或将所述测试信息的数量与所述消息数量之间的差值,与所述测试信息的数量进行求商运算,并将计算得到的商值作为压力测试的失败率。

7、在一种可选的方式中,所述压力测试方法还包括:若检测到当前预设采集时刻对应的写入数量为零值,则确定当前预设采集时刻所述目标分区对应的测试信息的写入速度为零值;若检测到当前预设采集时刻对应的消费数量为零值,则确定当前预设采集时刻所述目标分区对应的测试信息的消费速度为零值。

8、在一种可选的方式中,所述压力测试方法还包括:以所述预设采集时刻为第一维度,所述写入速度或所述消费速度为第二维度,构建得到坐标系;根据所述预设采集时刻对应的所述写入速度在所述坐标系中绘制得到写入速度曲线,并根据所述预设采集时刻对应的所述消费速度在所述坐标系中绘制得到消费速度曲线。

9、根据本申请实施例的另一方面,提供了一种消息队列的压力测试装置,所述压力测试装置包括:采集模块,用于将测试信息发送至消息队列中的目标分区,并在多个预设采集时刻采集所述目标分区中偏移量的参数值,得到多个预设采集时刻对应的参数值;计算模块,用于根据当前预设采集时刻对应的参数值和上一预设采集时刻对应的参数值,计算得到当前预设采集时刻所述目标分区对应的测试信息的写入速度和消费速度;测试模块,用于根据所述写入速度和所述消费速度,确定出当前预设采集时刻所述目标分区的运行压力。

10、根据本申请实施例的一个方面,提供了一种电子设备,包括:控制器;存储器,用于存储一个或多个程序,当一个或多个程序被所述控制器执行时,以执行上述的压力测试方法。

11、根据本申请实施例的一个方面,还提供了一种计算机可读存储介质,其上存储有计算机可读指令,当所述计算机可读指令被计算机的处理器执行时,使计算机执行上述的压力测试方法。

12、根据本申请实施例的一个方面,还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述的压力测试方法。

13、本申请实施例通过将测试信息发送至消息队列中的目标分区,并在目标分区消费过程中采集多个预设采集时刻对应的参数值,以计算出当前预设采集时刻乃至各个预设采集时刻,目标分区对应的测试信息的写入速度和消费速度,从而准确反映出目标分区各个预设采集时刻的运行压力。其中,将测试信息写入目标分区的同时,目标分区也处于消费状态,能客观反映出真实运用场景中目标分区的运行压力。

14、上述说明仅是本申请实施例技术方案的概述,为了能够更清楚了解本申请实施例的技术手段,而可依照说明书的内容予以实施,并且为了让本申请实施例的上述和其它目的、特征和优点能够更明显易懂,以下特举本申请的具体实施方式。

本文档来自技高网...

【技术保护点】

1.一种消息队列的压力测试方法,其特征在于,所述压力测试方法包括:

2.根据权利要求1所述的压力测试方法,其特征在于,在所述将测试信息发送至消息队列中的目标分区之前,所述压力测试方法还包括:

3.根据权利要求1所述的压力测试方法,其特征在于,所述参数值包括所述测试信息的写入数量和消费数量;所述根据当前预设采集时刻对应的参数值和上一预设采集时刻对应的参数值,计算得到当前预设采集时刻所述目标分区对应的测试信息的写入速度和消费速度,进一步包括:

4.根据权利要求3所述的压力测试方法,其特征在于,所述压力测试方法还包括:

5.根据权利要求4所述的压力测试方法,其特征在于,所述根据数据库中接收到的所述目标分区发送的消息数量和所述测试信息的数量,计算得到压力测试的成功率和/或失败率,进一步包括:

6.根据权利要求3所述的压力测试方法,其特征在于,所述压力测试方法还包括:

7.根据权利要求1至6中任一项所述的压力测试方法,其特征在于,所述压力测试方法还包括:

8.一种消息队列的压力测试装置,其特征在于,所述压力测试装置包括:

9.一种电子设备,其特征在于,包括:

10.一种计算机可读存储介质,其特征在于,其上存储有计算机可读指令,当计算机可读指令被计算机的处理器执行时,使计算机执行权利要求1至7中任一项所述的压力测试方法。

...

【技术特征摘要】

1.一种消息队列的压力测试方法,其特征在于,所述压力测试方法包括:

2.根据权利要求1所述的压力测试方法,其特征在于,在所述将测试信息发送至消息队列中的目标分区之前,所述压力测试方法还包括:

3.根据权利要求1所述的压力测试方法,其特征在于,所述参数值包括所述测试信息的写入数量和消费数量;所述根据当前预设采集时刻对应的参数值和上一预设采集时刻对应的参数值,计算得到当前预设采集时刻所述目标分区对应的测试信息的写入速度和消费速度,进一步包括:

4.根据权利要求3所述的压力测试方法,其特征在于,所述压力测试方法还包括:

5.根据权利要求4所述的压力测试方法,其特征在于,...

【专利技术属性】
技术研发人员:付虹升吴敏周欣
申请(专利权)人:赛力斯汽车有限公司
类型:发明
国别省市:

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

1