本文的主要内容是介绍如何在Linux CentOS 服务器上面搭建Jmeter的压测环境整个详细的流程,来满足我们日常工作中对于压力测试环境搭建、压力测试执行过程的需求。

一、首先我们要准备四个东西,在搭建环境的时候需要使用到

1、Xshell、puTTy等终端连接工具(本文教程使用Xshell)

Xshell用于连接Linux CentOS 服务器,为我们提供操作服务器的可视化界面,如何连接服务器本文不做赘述,如果有需要请自行联网搜索,网上教程很多。连接成功如下:

2、 Jmeter压缩安装包

Jmeter的压缩包需要自己去Jmeter的官网进行下载,由于是在centos环境下,所以我们下载tgz格式的压缩包就可以了,本文使用Jmeter 5.2.1进行演示:https://jmeter.apache.org/download_jmeter.cgi

3、 jmeter-plugins-manager-1.4.jar 插件,地址:https://jmeter-plugins.org/install/Install/,直接浏览器访问就可以下载了

4、 一台用于执行的服务器

需要注意的是,在实际工作中,一般情况下会有两台服务器,一台目标服务器(也可以称为生产服务器)被用于压测,一台压测服务器用于执行压测脚本

二、在进行Jmeter安装之前我们需要先安装JDK,为Jmeter提供运行环境,安装步骤如下:

1、首先检查是否安装了JDK:java -version

以下是未安装的情况,如果安装JDK需要按照Jmeter官网的建议安装Java8及以上的版本

以下是已经安装的情况:

2、查看Linux系统版本:【more /proc/version】、【uname -a】、【uname -r】、【lsb_release -a】,以上的命令任一 一个即可。查看版本的目的主要是查看我们的系统是64位还是32位的,我们需要安装对应版本的Java

我的服务器是64位,所以我对应安装64位的JDK就可以了

1、 使用前端软件包管理器Yellow dog Updater, Modified提供的JDK安装包,直接安装JDK:

l  列出所有可安装的Java软件包 :【yum list java*】

从结果可以看出我们可以安装软件包管理器提供的Java1.6,Java1.8,Java11版本,其中我们选择安装版本Java8即可

l  安装Java1.8.0版本:【yum -y install java-1.8.0-openjdk*】

注意:【jdk和*通配符之间不能敲空格,有空格不能匹配所有的子文件】【安装过程中需要等待它执行完成,不要中途中断,中断后可能出现错误,出现错误可以尝试卸载Java后重新安装】

l  安装JDK后查看是否安装成功(查看Java版本):【java -version】

优势:使用以上方法安装的JDK不用配置环境变量,JDK1.8以上的版本不需要配置运行环境

三、在Linux CentOS系统安装Jmeter

1、选择你需要放置Jmeter压缩包的文件夹:cd /usr/local/codes

通过以下方法可以查看自己服务器上是否存在以上文件夹:

l  执行命令进入目录:cd /usr/local/

(命令:cd / 进入根目录)

l  查看根目录下面所有文件夹:ls -l

发现没有codes文件夹,表明我的服务器下不存在codes文件夹

l  在/usr/local下新建一个codes目录用来存放Jmeter有关文件:mkdir codes

l  查看local下的目录:ls -l

l  已经新增codes文件夹成功【注意需要在local文件夹下执行,其他的文件夹下执行该命令的不会在local下新增】

注意:【建议将Jmeter放置在 /usr/local下,这文件夹是用于安装各项应用文件的;Jmeter是免安装的,我们只需要将Jmeter解压到一个目录下面,并根据这个目录配置环境变量即可】

2、上传Jmeter压缩包并解压Jmeter压缩包

l  进入codes目录:cd /usr/local/codes

l  查看Linux主机是否安装了lrzsz(用于Windows上传文件到Linux上),输入命令【任一目录均可以】:rz

l  找不到lrzsz,就需要先安装(同样使用软件包管理器),执行:yum -y install lrzsz

检查安装是否成功:rpm -qa lrzsz

l  安装成功后,上传文件:rz

l  上传文件-弹出窗-选择Windows本地的压缩文件【apache-jmeter-5.2.1.tgz】-上传完成弹窗关闭

l  上传完成后在codes文件夹下检查是否成功:ls -l

l  在codes目录下解压Jmeter压缩包:tar zxvf apache-jmeter-5.2.1.tgz

l  查看解压后的目录显示:ls –l

蓝色的为解压后的文件夹,红色的为上传的压缩包

3、配置Jmeter环境变量

l  进入etc目录:cd /etc/

l  打开profile文件进行编辑:vim profile

l  将以下内容复制到空白处:

export JMETER_HOME=/usr/local/codes/apache-jmeter-5.2.1

export CLASSPATH=$JMETER_HOME/lib/ext/ApacheJMeter_core.jar:$JMETER_HOME/lib/jorphan.jar:$CLASSPATH

export PATH=$JMETER_HOME/bin:$PATH:$HOME

【注意:粘贴时需要谨慎,检查单词是否完成,粘贴路径是否正确等,保证配置的正确。】

l  按下键盘【esc】键退出

l  按了esc键后输入:【:wq】再按下【enter】键,保存并退出

l  刷新保存环境变量,使配置文件生效:source /etc/profile

l  验证环境变量是否配置成功,显示如下界面则表示成功:jmeter -v

l  查看配置:[echo $PATH] [echo $JMETER_HOME] [echo $CLASSPATH]

显示已经配置成功

1、 安装Jmeter插件jmeter-plugins-manager

这个插件主要是用于:将Jmeter执行请求后生成的jtl文件转化为统计图,方便压测执行后数据分析,统计。

安装插件比较简单,只需要把下载好的jar包放到Jmeter的lib/ext目录下就可以了,具体步骤:

l  切换到目录:cd /usr/local/codes/apache-jmeter-5.2.1/lib/ext

l  上传本地文件【jmeter-plugins-manager-1.4】:rz

l  检查是否成功上传:ls -l

四、执行具体的压测操作

1、在/usr/local/codes下创建Jmeter目录,用于存放Jmeter脚本:mkdir jmeter

2、在/usr/local/codes下创建log目录,用于存放Jmeter脚本执行后的日志文件:mkdir log

3、上传编写好的脚本到目录Jmeter:

l  切换目录:cd /usr/local/codes/jmeter

l  上传脚本:rz  【脚本名称:测试压测.jmx】

l  在存放Jmeter脚本的文件夹下执行Jmeter脚本:jmeter -n -t 测试压测.jmx -l ../log/item.jtl

注意:【命令脚本名称与执行脚本的名称要一 一对应,尤其是空格这些要特别注意;一定要在存放Jmeter脚本的目录下执行上述命令,否则找不到Jmeter脚本】【jmeter -n -t 脚本名称 -l 存放结果日志的绝对路径或者相对路径/日志文件】

执行结果如下:

4、简单介绍数据结果各个字段含义:

l  Summary:本次压测执行总的请求数(单位:次)

l  Avg:所有请求数的平均响应时长(单位:ms)

l  Min:所有请求中响应时长最短的请求(单位:ms)

Max:所有请求中响应时长最长的请求(单位:ms)

l  Err:本次压测执行后的错误率

l  Active:请求活跃数

l  Finished:已结束的请求

5、导出报告,步骤如下:

l  先进入日志存放的目录:cd /usr/local/codes/log

l  将已经生成的日志转化为HTML报告:jmeter -g item.jtl -o /usr/local/codes/log/item

【注意:/usr/local/codes/log这个地方可以写绝对路径也可以写相对路径,如果不确定自己写的相对路径是否正确,就写绝对路径就行了】、【如果每次导出报告想要导出单次压测的数据而不是多次压测数据的总和的话,需要在每次执行导出报告后将log文件夹里面的压测数据清空,使用命令[rm -rf *],使用该命令的时候尤其要小心,需要到/usr/local/codes/log文件夹下执行,不能随意执行】

l  将item.jtl文件压缩成item.tar.gz文件:tar zcvf item.tar.gz item

l  把已经生成的报告文件导出,放到Windows任一(桌面 )路径即可: sz item.tar.gz

l  解压桌面文件并打开压缩包里面的index.html 文件:

index.html文件里面详细记录了压测后的请求总数,响应时长,error率,error数,error原因等各项数据,可以用于压测结果分析。

注意:【如果遇到导出的文件解压后会出现不能打开的情况,如下图。这种情况下可以使用,直接用解压软件打开压缩包,在压缩包里面点击下图的文件,就可以打开并查看index.html文件了】

至此我们的Jmeter压测环境便已经搭建完成,在搭建的过程中会有各种问题,所以希望读者在实际操作的时候多加细心,慢慢处理每一个步骤。希望以上内容对大家有用,谢谢。

在Linux CentOS上搭建Jmeter压测环境的更多相关文章

  1. CentOS上搭建java WEB开发环境Tomcat+MySQL+JDK

    对于初学者来说,想在linux系统上搭建一个java web服务器,不知道什么方案可行, 这篇文章主要是告诉这些基础和概念相对薄弱的同学,这样搭建是可行的,大体上没问 题的,出问题也是细节问题.所以此 ...

  2. Jmeter压测环境准备

    Jmeter性能监控 配置好测试机器上的jmeter环境:http://jmeter-plugins.org/downloads/all/ 网站下载两个东西: JMeterPlugins-Standa ...

  3. 在linux服务器上搭建Struts2项目运行环境

    服务器上工作: 首先要先装java https://www.cnblogs.com/lamp01/p/8932740.html 然后装好tomcat https://www.cnblogs.com/y ...

  4. jmeter压测、操作数据库、分布式linux下运行、webservice接口测试、charles抓包

    一.jmeter压测 在线程组中设置好,然后添加http请求,t添加聚合报告查看压力测试结果,如图: 一般压测时间10-15分钟,如果是稳定性测试,一般n*12小时,这些并发用户一直在请求. tps: ...

  5. jmeter压测、操作数据库、分布式、 linux下运行的简单介绍

    一.jmeter压测 1.如何压测 常规性能压测:10-15分钟 稳定性测试:一周.2天等 如果想要压测10分钟,勾选永远,勾选调度器,填写600秒.也可以使用固定启动时间. 2.tps.响应时间 ( ...

  6. JMeter压测上对于并发的认识误区

    1.误区 在JMeter压测过程中,我们通常认为1s内100的并发量(即:QPS为100)的设置如下: 此时,没有再添加额外的控制器.上述中的参数设置解释:Number of Threads(user ...

  7. jmeter压测学习2-linux运行jmeter环境

    前言 使用jmeter做压测的时候,在windows上不太稳定,所有一直在linux服务器上使用jmeter做压力测试. 本篇记录下linux上搭建jmeter环境,以及运行jmeter脚本,查看报告 ...

  8. jmeter压测之添加负载机

    jmeter压测基本介绍一般基准测试(基准测试时间一般为5分钟)后压测的时间是10-15分钟: 实施测试之前要拿到测试指标 例如:tps要达到多少响应时间要达到多少并发数要达到多少TPS :服务端每秒 ...

  9. jmeter压测-负载配置

    jmeter 压测 一般压测的时间是10-15分钟 TPS:服务端每秒钟处理的请求数  越大越好 响应时间 :越短越好 并发用户数  也就是多少并发 指标给你:tps要达到多少 响应时间要达到多少 并 ...

随机推荐

  1. 配置伪分布模式下的hadoop以及采用fuse-dfs来访问HDFS

    实验目标 配置环境的主要目的是得到HDFS的客户端fuse-dfs的IO性能.本来的服务器上没有任何环境,因此安装均是从无到有的.系统是Ubuntu server 14.04 amd64.整个过程参考 ...

  2. 使用Mongodb设计评论系统

    1:如何设计数据存储结构 1.1:mysql 1:评论表 2:回复表(评论的评论) 1.2:mongodb 不需要两张表,一个collection 就可以搞定. 数据结构如图: 通过对象数组中的字段作 ...

  3. KnowRbao_uni-app

    uni-app开发项目模板 主要的代码如下: pages.json 这里是添加页面的路径代码还可以设置标题: { "pages" : [ //pages数组中第一项表示应用启动页, ...

  4. 如何掌握 C 语言的一大利器——指针?

    一览:初学 C 语言时,大家肯定都被指针这个概念折磨过,一会指向这里.一会指向那里,最后把自己给指晕了.本文从一些基本的概念开始介绍指针的基本使用. 内存 考虑到初学 C 语言时,大家可能对计算机的组 ...

  5. Snort + Barbyard2 + Snorby环境搭建

    1.环境 ubuntu-14.04.5 daq-2.0.7 Snort-2.9.15.1 Barbyard2 snorby Mysql Docker 2.架构 3.安装步骤 Ubuntu配置 如果是刚 ...

  6. 干货!!!测试如何确定是前端bug还是后端bug

    目前的项目大多数都是前后端分离的,当我们发现bug后不知道指派给哪位开发,指派错了不仅影响解决bug 的效率,还容易被开发怼.最主要的是人家会认为你不专业,不专,不专呀.废话少说,上干货(踩过的坑)! ...

  7. 死磕Spring之IoC篇 - @Bean 等注解的实现原理

    该系列文章是本人在学习 Spring 的过程中总结下来的,里面涉及到相关源码,可能对读者不太友好,请结合我的源码注释 Spring 源码分析 GitHub 地址 进行阅读 Spring 版本:5.1. ...

  8. Lzzy高级语言程序设计之for循环

    public class Mq { public static void main(String[]args){ int a = 3 ; a++;// do{ System.out.println(& ...

  9. 【关系抽取-R-BERT】加载数据集

    认识数据集 Component-Whole(e2,e1) The system as described above has its greatest application in an arraye ...

  10. python inspect库

    一.介绍 inspect模块用于收集python对象的信息,可以获取类或函数的参数的信息,源码,解析堆栈,对对象进行类型检查等等. inspect模块主要提供了四种用处: 对是否是模块.框架.函数进行 ...