一种基于QPS的动态调整方法以及相关设备技术

技术编号:20242141 阅读:16 留言:0更新日期:2019-01-29 23:16
本发明专利技术实施例提供了一种基于QPS的动态调整方法及相关设备,可以减少压力测试中的用户工作量,提高用户体验。该方法包括:获取目标任务,所述目标任务为待执行压力测试的任务;确定所述目标任务执行压力测试所需要的目标线程数;基于所述目标线程数确定目标施压机,所述目标施压机为对所述目标任务执行压力测试的施压机;通过所述目标施压机对所述目标任务执行压力测试;获取所述目标施压机的每秒查询率QPS;判断所述目标施压机的QPS与预设QPS是否匹配,所述预设QPS与所述目标任务具有关联关系;若否,则动态调整所述目标施压机的QPS,以使得所述目标施压机的QPS与所述预设QPS相匹配。

【技术实现步骤摘要】
一种基于QPS的动态调整方法以及相关设备
本专利技术涉及信息处理
,尤其涉及一种基于QPS的动态调整方法以及相关设备。
技术介绍
传统压测平台如NGrinder、Jmeter压测模式只有并发量即线程的设置,压测统计数据的考虑大都是每秒查询率(QueryPerSecond,QPS)和响应时间(responsetime,RT);针对有登录的压测,一个线程模拟一个用户,这种测试方案是可行的。针对HTTP协议这种无状态的压测,目前业界的压测平台大都是通过设置并发量达到一定QPS判断RT的大小作为性能的评判标准,这种测试方案需要用户对执行压测的线程数进行预估,并不停的进行设置,这样会造成用户的工作量巨大,且用户体验不好。
技术实现思路
本专利技术实施例提供了一种基于QPS的动态调整方法及相关设备,可以减少压力测试中用户的工作量,提高用户体验。本专利技术实施例的第一方面提供了一种基于QPS的动态调整方法,包括:获取目标任务,所述目标任务为待执行压力测试的任务;确定所述目标任务执行压力测试所需要的目标线程数;基于所述目标线程数确定目标施压机,所述目标施压机为对所述目标任务执行压力测试的施压机;通过所述目标施压机对所述目标任务执行压力测试;获取所述目标施压机的每秒查询率QPS;判断所述目标施压机的QPS与预设QPS是否匹配,所述预设QPS与所述目标任务具有关联关系;若否,则动态调整所述目标施压机的QPS,以使得所述目标施压机的QPS与所述预设QPS相匹配。可选地,所述动态调整所述目标施压机的QPS,以使得所述目标施压机的QPS与所述预设QPS相匹配包括:获取所述目标任务的响应时长RT;当所述目标任务的RT小于第一预设值时,则调整第一线程的压测接口的休眠时间,以动态调整所述目标施压机的QPS,调整后的所述休眠时间与所述目标任务的RT的和值满足第一预设条件,所述第一线程为所述目标施压机中的线程,且所述第一线程与所述目标任务具有关联关系;当所述目标任务的RT大于所述第一预设值时,则调整所述第一线程的压测接口的休眠时间,以动态调整所述目标施压机的QPS,其中,调整后的所述休眠时间等于0。可选地,当所述第一线程的压测接口的休眠时间等于0,且所述目标施压机的QPS与所述预设QPS不相匹配时,所述包括:调整所述目标施压机的线程数,直至所述目标施压机的QPS与所述预设QPS相匹配。可选地,所述基于所述目标线程数确定目标施压机包括:遍历施压机集群中各施压机的空闲线程数;将所述施压机集群中空闲线程数大于所述目标线程数的施压机确定为所述目标施压机。可选地,当所述施压机集群中不存在空闲线程数大于所述目标线程数的施压机时,所述方法还包括:获取所述施压机集群中空闲线程数大于第二预设值的第一施压机;调整所述第一施压机中使用的线程,以使得调整后的所述第一施压机的空闲线程数大于所述目标线程数;将调整后的所述第一施压机确定为所述目标施压机。本专利技术实施例第二方面提供了一种基于QPS的动态调整装置,包括:第一获取单元,用于获取目标任务,所述目标任务为待执行压力测试的任务;第一确定单元,用于确定所述目标任务执行压力测试所需要的目标线程数;第二确定单元,用于基于所述目标线程数确定目标施压机,所述目标施压机为对所述目标任务执行压力测试的施压机;测试单元,用于通过所述目标施压机对所述目标任务执行压力测试;第二获取单元,用于获取所述目标施压机的每秒查询率QPS;判断单元,用于判断所述目标施压机的QPS与预设QPS是否匹配,所述预设QPS与所述目标任务具有关联关系;调整单元,用于当所述目标施压机的QPS与所述预设QPS不相匹配时,动态调整所述目标施压机的QPS,以使得所述目标施压机的QPS与所述预设QPS相匹配。可选地,所述调整单元具体用于:获取所述目标任务的响应时长RT;当所述目标任务的RT小于第一预设值时,则调整第一线程的压测接口的休眠时间,以动态调整所述目标施压机的QPS,调整后的所述休眠时间与所述目标任务的RT的和值满足第一预设条件,所述第一线程为所述目标施压机中的线程,且所述第一线程与所述目标任务具有关联关系;当所述目标任务的RT大于所述第一预设值时,则调整所述第一线程的压测接口的休眠时间,以动态调整所述目标施压机的QPS,其中,调整后的所述休眠时间等于0。可选地,所述调整单元还具体用于:当所述第一线程的压测接口的休眠时间等于0,且所述目标施压机的QPS与所述预设QPS不相匹配时,调整所述目标施压机的线程数,直至所述目标施压机的QPS与所述预设QPS相匹配。可选地,所述第二确定单元具体用于:遍历施压机集群中各施压机的空闲线程数;将所述施压机集群中空闲线程数大于所述目标线程数的施压机确定为所述目标施压机。可选地,所述第二确定单元还具体用于:当所述施压机集群中不存在空闲线程数大于所述目标线程数的施压机时,获取所述施压机集群中空闲线程数大于第二预设值的第一施压机;调整所述第一施压机中使用的线程,以使得调整后的所述第一施压机的空闲线程数大于所述目标线程数;将调整后的所述第一施压机确定为所述目标施压机。本专利技术第三方面提供了一种电子设备,包括存储器、处理器,其特征在于,所述处理器用于执行存储器中存储的计算机管理类程序时实现如上述任意一项所述的基于QPS的动态调整方法的步骤。本专利技术第四方面提供了一种计算机可读存储介质,其上存储有计算机管理类程序,其特征在于:所述计算机管理类程序被处理器执行时实现如上述任意一项所述的基于QPS的动态调整方法的步骤。综上所述,可以看出,本专利技术提供的实施例中,基于QPS的动态调整装置在对目标任务进行压力测试的过程中,只需要接收用户输入的预设QPS即可,不需要用户在继续进行设置,即可以对目标任务进行压力测试,相对于现有技术中需要用户不停的设置线程数进行人工调节,可以减少用户的工作量,提高用户体验。附图说明图1为本专利技术实施例提供的一种基于QPS的动态调整方法的流程示意图;图2为本专利技术实施例提供的一种基于QPS的动态调整装置的实施例示意图;图3为本专利技术实施例提供的一种基于QPS的动态调整装置的硬件结构示意图;图4为本专利技术实施例提供的一种电子设备的实施例示意图;图5为本专利技术实施例提供的一种计算机可读存储介质的实施例示意图。具体实施方式本专利技术实施例提供了一种基于QPS的动态调整方法及相关设备,可以减少压力测试中用户的工作量,提高用户体验。本专利技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。下面从基于QPS的动态调整装置的角度对基于QPS的动态调整方法进行本文档来自技高网...

【技术保护点】
1.一种基于QPS的动态调整方法,其特征在于,包括:获取目标任务,所述目标任务为待执行压力测试的任务;确定所述目标任务执行压力测试所需要的目标线程数;基于所述目标线程数确定目标施压机,所述目标施压机为对所述目标任务执行压力测试的施压机;通过所述目标施压机对所述目标任务执行压力测试;获取所述目标施压机的每秒查询率QPS;判断所述目标施压机的QPS与预设QPS是否匹配,所述预设QPS与所述目标任务具有关联关系;若否,则动态调整所述目标施压机的QPS,以使得所述目标施压机的QPS与所述预设QPS相匹配。

【技术特征摘要】
1.一种基于QPS的动态调整方法,其特征在于,包括:获取目标任务,所述目标任务为待执行压力测试的任务;确定所述目标任务执行压力测试所需要的目标线程数;基于所述目标线程数确定目标施压机,所述目标施压机为对所述目标任务执行压力测试的施压机;通过所述目标施压机对所述目标任务执行压力测试;获取所述目标施压机的每秒查询率QPS;判断所述目标施压机的QPS与预设QPS是否匹配,所述预设QPS与所述目标任务具有关联关系;若否,则动态调整所述目标施压机的QPS,以使得所述目标施压机的QPS与所述预设QPS相匹配。2.根据权利要求1所述的方法,其特征在于,所述动态调整所述目标施压机的QPS,以使得所述目标施压机的QPS与所述预设QPS相匹配包括:获取所述目标任务的响应时长RT;当所述目标任务的RT小于第一预设值时,则调整第一线程的压测接口的休眠时间,以动态调整所述目标施压机的QPS,调整后的所述休眠时间与所述目标任务的RT的和值满足第一预设条件,所述第一线程为所述目标施压机中的线程,且所述第一线程与所述目标任务具有关联关系;当所述目标任务的RT大于所述第一预设值时,则调整所述第一线程的压测接口的休眠时间,以动态调整所述目标施压机的QPS,其中,调整后的所述休眠时间等于0。3.根据权利要求2所述的方法,其特征在于,当所述第一线程的压测接口的休眠时间等于0,且所述目标施压机的QPS与所述预设QPS不相匹配时,所述包括:调整所述目标施压机的线程数,直至所述目标施压机的QPS与所述预设QPS相匹配。4.根据权利要求1所述的方法,其特征在于,所述基于所述目标线程数确定目标施压机包括:遍历施压机集群中各施压机的空闲线程数;将所述施压机集群中空闲线程数大于所述目标线程数的施压机确定为所述目标施压机。5.根据权利要求4所述的方法,其特征在于,当所述施压机集群中不存在空闲线程数大于所述目标线程数的施压机时,所述方法还包括:获取所述施压机集群中空闲线程数大于第二预设值的第一施压机;调整所述第一施压机中使用的线程,以使得调整后的所述第一施压机的空闲线程数大于所述目标线程数;将调整后...

【专利技术属性】
技术研发人员:张德华
申请(专利权)人:武汉斗鱼网络科技有限公司
类型:发明
国别省市:湖北,42

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

1