系统压力测试(二)

版权声明:禁止转载 https://blog.csdn.net/qq_36505948/article/details/82529850

jmeter可以做接口测试和压力测试。其中接口测试的简单操作包括做http脚本(发get/post请求、加cookie、加header、加权限认证、上传文件)、做webservice脚本、参数化、断言、关联(正则表达式提取器和处理json-json path extractor)和jmeter操作数据库等等。具体的使用参考官网就可以了

JMeter的官方网站:http://jmeter.apache.org/

JMeter的参考手册:http://jmeter.apache.org/usermanual/get-started.html


Windows下压测的步骤:(HTTP)

一般分五个步骤:(1)添加线程组 (2)添加http请求 (3)在http请求中写入接入url、路径、请求方式和参数 (4)添加聚合报告 (5)调用接口、查看返回值

一般情况下,打开压测JEMeter后会有一个默认测试计划,我们的一切活动都是在测试计划下执行的,流程及各阶段显示如下

(1)添加线程组

(2)添加HTTP默认值

在同一个线程组中不同可以有不同的测试,通常情况下我们的项目地址是一致的而接口不同,那么可以将项目地址设置为默认值

(3)添加HTTP明细请求

(4)生成聚合报告 

聚合报告在监听器里面查看,也是做压测时候最经常使用的一种,另外一种是表格

(5)查看表格或者图形结果 


JMeter读取自定义文件模拟多用户

如何通过配置文件加载数据进行压测?

1.在线程组中的配置元件或者配置的CSV配置元件(一种以特定格式存储的文件),如下

自定义文件名和文件中的变量名

2.在获取信息的请求里面加载变量


 1.如何生成一份压测报告,压测报告的指标和因素请查看压测一

2.当压测结束后,可以将该压测流程保留下来,留待下次使用,一般做法是在软件的安装位置创建一个jmx_files的文件夹作为压测脚本的存储位置!压测脚本的命名一般以项目和接口大类名为准,方便查看


那么如何在linux上面进行压测呢 ?

   1. Windows下创建一个压测,然后存为xxxx.jmx文件,再上传至Linux下执行,即可,命令如下:

./apache-jmeter-4.0/bin/jmeter.sh -n -t goods_list.jmx -l  result.jtl

 其中:-t表示执行要执行的压测文件,-l表示压测结果输出到 result.jtl中

   2.进行redis的压测?


ps -ef | grep redis
  • 检查redis服务是否在运行
redis-benchmark -h 127.0.0.1 -p 6379 -c 100 -n 100000

   

  3.如何查看reids压测结果? 

  • -h 127.0.0.1 就是IP地址 -p 6379就是端口  -c 100 就是100个并发 -n 100000 就是100000个请求。

 

      以下为上面主要介绍的方法,在redis中最为常用

redis默认是3个字节输出一次信息,-q是以100个单位大小数据包的输出一次信息
redis-benchmark -h 127.0.0.1 -p 6379 -q -d 100 
优点:redis默认是以3字节加载一次,如果不设置则会不停地将数据给打印出来,将所有的类型给遍历压测一遍,使用该命名则可以减少其打印次数
================================================================================================
沿用上次的数据包大小,只测试set,xxxx的xxxx命令
redis-benchmark -t set,lpush -q -n 10000 
优点:-q沿用上次的100字节,然后打印特定的方法的压测结果
================================================================================================
只是压测其中一条命令
redis-benchmark -n 10000 -q script load "redis.call('set','xxx','bar')"
优点:将命令放置如call()中,redis只压测该命令

猜你喜欢

转载自blog.csdn.net/qq_36505948/article/details/82529850
今日推荐