Jmeter的使用介绍

一、背景  

工作中有个高并发的问题导致页面卡住不动,本地测试环境模拟5万个用户来同时访问,类似于秒杀,在10点开始的时候,马上有1万个用户进来访问页面,后续陆续又短时间内进来大量用户访问。

 

二.使用过程

jmeter下载下来之后,解压,是一个D:\apache-jmeter-5.6.2\bin这样的文件夹。双击jmeter.bat启动,打开UI界面。

1.增加stepping thread group线程组:

解释:

1.一共启动5万个线程,类似于总数有5万个用户访问

2.等待3s之后再开始添加线程,马上启动1万个线程,然后再每隔1s增加1万个线程。持续180s。最后每秒停止5千个线程。

3.可以看下面的图形曲线,可以很好的看出线程数的变化。

 

2.取样器:活动楼层列表查询:

这就是我们要测试的接口,消息体数据为:

{
	"_locale":"zh_CN",
	"accessJnlNo":"${__time(yyyyMMddHHmmssSSS,)}01${__Random(10000000,999999999,)}",
	"loginType":"R",
	"_channelId":"168",
	"_bankId":"1001",
	"_transAuthType":"unite_data_auth",
	"cityCode":"340100",
	"cityName":"合肥"
}

3.添加响应断言

上图只是示例。可以根据响应文本来判断接口请求返回成功,还是失败。

4.添加查看结果树

可以看到每个线程请求接口后,响应的结果。

5.添加聚合报告。

 

2.测试计划为添加线程组的方式

1.添加线程组:

解释:

1.在1s时间内启动10万个线程访问,10万个线程只访问1次。持续时间180s。

 

2.添加取样器,和上面一样。

3.添加查看结果树

4.汇总报告

 

 

三、小结

写的比较简单,主要是记录下jmeter压测接口的使用,参考配置的图片即可,网上也有很多介绍搜一下就可以了。后面其他的使用情况再更新。

 

 

四、tps的计算  

原文链接:https://blog.csdn.net/cae_520_ww/article/details/127923710

(1)普通计算公式:TPS= 总请求数 / 总时间

例子:

1、秒杀活动压测数据计算
假如平台总注册用户数有100w,有10w用户约定好同时对某一接口进行访问,比如1分钟,陆续来访10w用户,那么我们系统并发用户是比实际的10w要小的,那一个秒杀活动开始时,10w用户在10秒内重复请求多次,平均3次每个人,那么tps=100000/10=10000tps,表明我们目标的tps应达到10000才能抗住100000用户的同时请求

2、领券活动压测
平台注册用户数100w,用10w用户准备抢券,即10w人同时在10秒内访问抢券接口,在过程中每个用户可能会多次点击抢券,估算每个用户点击3次抢券接口,那么tps=100000*3/10=30000tps,系统的目标tps需达到30000才抗住10w用户的并发访问压力
                        

百度文库:

jemeter中tps计算公式
基本公式。
TPS的计算公式为:TPS = 总事务数 / 统计时间(秒)。
相关概念解释。
总事务数:指在特定测试场景下,JMeter成功执行的事务数量。在JMeter的聚合报告(Aggregate Report)中, “Samples” 这一列的数据就代表了总事务数。这里的事务可以是一个HTTP请求、一个数据库查询操作等,具体取决于你在JMeter测试计划中定义的事务边界。

统计时间:是指JMeter执行这些事务总共花费的时间,单位为秒。在聚合报告中,“Elapsed Time” 列显示的是总耗时,但单位是毫秒。所以在计算时,需要将这个以毫秒为单位的时间值转换为秒。

计算示例。
假设我们进行了一次JMeter性能测试,测试结束后查看聚合报告:
总事务数:聚合报告中 “Samples” 的值为 5000,表示整个测试过程中成功执行了5000个事务。
统计时间:“Elapsed Time” 的值为 80000 毫秒。为了得到以秒为单位的统计时间,我们进行如下计算:80000 毫秒 ÷ 1000 = 80 秒。
然后,根据TPS的计算公式:TPS = 总事务数 / 统计时间(秒),将上述数据代入公式可得:TPS = 5000 / 80 = 62.5。
这意味着在本次测试中,系统平均每秒能够处理62.5个事务。

注意事项。
事务定义的准确性:确保在JMeter中正确定义事务。如果事务定义不准确,例如事务边界划分错误,可能会导致总事务数统计错误,从而使TPS计算结果失去意义。
测试环境的稳定性:测试过程中,要保证测试环境的稳定性,包括服务器资源(CPU、内存、网络等)的稳定。不稳定的环境可能会导致测试结果波动较大,使得TPS数据不能真实反映系统的性能。
数据的代表性:为了使TPS数据更具代表性,建议进行多次测试,并取平均值。单次测试结果可能会受到各种偶然因素的影响,多次测试可以减少这些因素的干扰,得到更可靠的性能指标。

 

 

 

--

posted on 2024-12-16 18:06  有点懒惰的大青年  阅读(209)  评论(0)    收藏  举报