jmeter_linux_环境安装

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/snailchangquan/article/details/94409757

=================1 jdk 安装=======================

方法一:手动解压JDK的压缩包,然后设置环境变量

1.在/usr/目录下创建java目录

[root@localhost ~]# mkdir/usr/java
[root@localhost ~]# cd /usr/java

2.下载jdk,然后解压

[root@localhost java]# curl -O http://download.Oracle.com/otn-pub/java/jdk/7u79-b15/jdk-7u79-linux-x64.tar.gz 
[root@localhost java]# tar -zxvf jdk-7u79-linux-x64.tar.gz

3.设置环境变量

[root@localhost java]# vi /etc/profile

在profile中添加如下内容:

#set java environment
JAVA_HOME=/usr/java/jdk1.7.0_79
JRE_HOME=/usr/java/jdk1.7.0_79/jre
CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
export JAVA_HOME JRE_HOME CLASS_PATH PATH

让修改生效:

[root@localhost java]# source /etc/profile

4.验证JDK有效性

[root@localhost java]# java -version
java version "1.7.0_79"
Java(TM) SE Runtime Environment (build 1.7.0_79-b15)
Java HotSpot(TM) 64-Bit Server VM (build 24.79-b02, mixed mode)

方法二:用yum安装JDK

1.查看yum库中都有哪些jdk版本(暂时只发现了openjdk)

[root@localhost ~]# yum search java|grep jdk

2.选择版本,进行安装

//选择1.7版本进行安装
[root@localhost ~]# yum install java-1.7.0-openjdk
//安装完之后,默认的安装目录是在: /usr/lib/jvm/java-1.7.0-openjdk-1.7.0.75.x86_64

3.设置环境变量

[root@localhost ~]# vi /etc/profile

在profile文件中添加如下内容(倒数第二行前 unset i)

#set java environment
JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.75.x86_64
JRE_HOME=$JAVA_HOME/jre
CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
export JAVA_HOME JRE_HOME CLASS_PATH PATH

让修改生效

[root@localhost java]# source /etc/profile

4.验证(同上一方法)

======================2安装rz sz工具===========================

1、yum -y install lrzsz

rz 为上传, sz为下载

2、执行rz上传apache-jmeter-3.1.zip

执行rz 上传apache-tomcat-7.0.72.zip

执行rz 上传PerfTeach.zip  接口

3、将这三个文件拷贝到/home/server下 如:cp /apache-tomcat-7.0.72.zip /home/server/

将这三个文件解压  unzip apache-jmeter-3.1.zip

4、进入tomcat目录 /home/server/apache-tomcat-7.0.72/webapps

将接口项目移入进来 mv /home/server/PerfTeach ./

5、进入tomcat bin目录 /home/server/apache-tomcat-7.0.72/bin   

付权限  chmod +x ./*

启动tomcat : ./startup.sh

6、检查tomcat是否启动  ps -ef|grep tomcat

页面检查接口是否可访问; 192.168.1.200:8080/PerfTeach/GetMethod?skuId=123&opt=abc

注:若接口无反应需要关闭防火墙

停止firewalld服务

停止防火墙,并禁用这个服务

sudo systemctl stop firewalld.service
sudo systemctl disable firewalld.service

==============3\上传jmeter文件========

调试好脚本

用rz上传脚本        (/home/server/case)

进入jmeter目录  /home/server/apache-jmeter-3.1/bin

执行脚本 ./jmeter -n -t /home/server/case/time.jmx -l /home/server/case/time.jtl

或/home/server/apache-jmeter-3.1/bin/jmeter -n -t time.jmx -l time1.jtl

如果执行报错,可能需要配置主机与主机名的映射 vi /etc/hosts

执行结果:

生产的.jtl文件可在windows的聚合报告中浏览打开;

含义:+:过去某一段时间内的值;=:从开始执行到现在为止;第一行:151(请求数) in 00:00:07(7秒内的)   23.0/s(tps 平均每秒调用23次)   AVG:384 (平均384毫秒)

MIN:374(最小374毫秒)   Err:错误率 ; Active:当前多少个并发;

一般30秒打印一条记录(可修改:/home/server/apache-jmeter-3.1/bin/jmeter.properties   将summariser.interval=10  打开最小值为6)

====================4、配置Jmeter环境变量==============

vi /etc/profile

在profile文件中添加如下内容(倒数第二行前 unset i)

#set java environm
JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.221-2.6.18.0.el7_6.x86_64
JMETER_HOME=/home/server/apache-jmeter-3.1
JRE_HOME=$JAVA_HOME/jre
CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
PATH=$JMETER_HOME/bin:$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
export JAVA_HOME JRE_HOME CLASS_PATH PATH

 

然后使环境变量生效  source /etc/profile

echo  $JMETER_HOME (查看环境变量位置)

后续执行脚本 只需要进入脚本目录即可执行  jmeter -n -t time.jmx -l time1.jtl

=======================5结果报表==================================

三:生成html 报表  在case目录下创建一个report文件夹

jmeter -g time.jtl -o report/

然后用zip -r report/ 将报告打包

zip -r report.zip report/

1、需要修改/home/server/apache-jmeter-3.1/bin/reportgenerator.properties

jmeter.reportgenerator.overall_granularity=60000  (改为1000, 1秒打印一次)

 

===============================================================

========================6分布式========================================

一台最多也就1千个并发

修改主机名与本机ip的映射;每台主机都要改

a、修改主机名vi /etc/sysconfig/network

保存退出后执行:hostname snailquan 使主机名生效

b、vi /etc/hosts

1,在每台机器上都部署 jmeter

2,如果是java脚本,将java脚本和相关lib包都放在jmeter目录lib/ext

3,将jmeter的场景文件jmx上传到服务器上的任意位置

(注:

如果是http脚本,在controller的机器上有脚本文件即可;

       如果是Java脚本,在每一台机器上都得有脚本文件和依赖的jar包;

如果有参数文件,(每台机器)也要上传

4,在每台机器上进入到jmeterbin目录下,都启动nohup ./jmeter-server &(后台启动jmeter-server服务)

(先用这种./jmeter-server 方式调试,出现类似这种证明成功了Created remote object: UnicastServerRef [liveRef: [endpoint:[192.168.1.200:45755](local),objID:[-16ca61d6:16bd384a93b:-7fff, 979720870480687794]]]

ps -ef|grep jmeter-server 查看是否nohup启动成功)

 

5,进入到jmeter目录下,将两台机器上的jmeter下所有文件都赋予可执行权限,chmod -R +x ./*

6,在主jmeterbin目录下,修改jmeter.properties,将其中的remote_hosts修改为作为压力机的两台机器ipremote_hosts=127.0.0.1,192.168.0.102?

7,在主jmeter的机器上,执行/export/servers/apache-jmeter-xxx/bin/jmeter -n -t jdbc.jmx -l result.jtl -r(示例,具体目录和路径自定义)

 

分布式跑脚本的时候如果使用了ctrl+C 强制停止,那么下次再启动的时候辅机会连不上, 需要把jmeter-server进程重启(先杀掉在启动)

Jmeter参数优化

1,控制台取样间隔的设置(jmeterbin目录下,修改jmeter.properties)

summariser.interval=10,默认为30s,最低可修改为6s

2Jvm参数优化

bin目录下,vi jmeter,修改HEAPsize大小,默认512M,可以设置成1024M2048M(8G内存配2G, 4G内存配1G)

3,默认编码修改

sampleresult.default.encoding=UTF-8

 

8、压测服务器报错时(错误率不为0),

可在脚本的查看结果树中的configure里把xml信息都勾选上(仅是xml的情况,csv得勾选对应信息); 并将文件命名err.xml,并勾选仅日志错误

没有更多推荐了,返回首页