背景:
因为双11,黑五快到了,所有的互联网电商行业都要做一件事情,那就是压测,常见的压测很多区分,接口压测和全链路压测、线上压测和线下压测,单元压测和功能压测。我们这里介绍一下接口压测和全链路压测。
常见使用的工具包括:zabbix、zuul、netdata、arthas、nginx流量监测。
常见压测工具包括:gatling 、jmeter等等
安装方法:
一、在Linux服务器先安装sdk(目前所有服务器均安装了java,可先查看java-version)
1、先从客户端下载jdk1.8.0_144.tar.gz,再上传到服务器
2、解压:tar -xzf jdk1.8.0_144.tar.gz,生成文件夹 jdk1.8.0_144
3、在/usr/local目录下创建java文件夹,再将 jdk1.8.0_144目录移动到/usr/local/java中
1)cd /usr/local
2) mkdir java
3)mv jdk1.8.0_144 /usr/local/java
3、配置java环境变量
1)vi /etc/profile
2)在最后面增加两行
export JAVA_HOME=/usr/local/java/jdk1.8.0_144
export PATH=$JAVA_HOME/bin:$PATH
重启虚拟机后配置才会生效
3)执行命令:source /etc/profile,无需重启,配置的环境变量立马生效
或者执行以下命令(必须是root角色,普通角色没有权限)
# export JAVA_HOME=/usr/local/java/jdk1.8.0_144
# export PATH=$JAVA_HOME/bin:$PATH
4、查看是否安装成功,执行命令:java-version
二、安装Jmeter
1、将本地的Jmeter文件打包成zip文件:apache-jmeter-3.1.zip,再上传到服务器(路径/usr/local)
2、在服务器解压缩,生成apache-jmeter-3.1目录
1)安装unzip:apt-get install unzip
2)解压缩:unzip apache-jmeter-3.1.zip
3、配置Jmeter环境变量。vi /etc/profile,再添加如下变量
export JMETER_HOME=/usr/local/apache-jmeter-3.1
export PATH=$JMETER_HOME/bin:$PATH
export CLASSPATH=$JMETER_HOME/lib/ext/ApacheJMeter_core.jar:$JMETER_HOME/lib/jorphan.jar:$CLASSPATH
4、source /etc/profile (让配置文件立马生效)
5、查看是否安装成功,执行命令:jmeter -v
注意如果之前有数据或者切换了jmeter新版本,会发现少jar包,需要copy jar包到apache-jmeter-5.1\lib\ext 下。
三、接口测试
计数器:
随机变量:
BeanShell 后置处理程序:
1、用例中涉及的Beanshell和csv、txt等文件上传(路径/usr/local/apache-jmeter-3.1/tools)
2、修改用例中的配置文件路径
(1)user_linux.txt存储多用户名,方便循环多用户登录。修改该文件的配置路径。
(2)修改Beanshell的路径
3、将本地生成的jmx文件上传到服务器(路径/home/jmx)
4、输入命令后台运行:# nohup jmeter -n -t /home/jmx/login_circle.jmx -l log.jtl &
(前台运行jmeter -n -t /home/jessica/httpThread.jmx -l log.jtl
查看cat log.jtl,注意此方法返回即退出运行)
参数说明:
-n:以NoGUI方式运行脚本
-t:后面接脚本名称
-l:后面接日志名称,保存运行结果
5、查看后台运行过程 tailf nohup.out (查找nobup.out所在路径 find / -name nohup.out )
6、查看用例报告,vi /home/jmx/log.jtl
7、图形化报表导出命令:
./jmeter -n -t /jpTest.jmx -l /test20191018001.jtl -e -o /report/