Jmeter性能测试-安装和配置、分布式压测配置及服务器性能监控
Jmeter性能测试
(一)工具版本
(二)安装和配置
- 安装jdk
在D盘下新建JAVA文件夹,找到jdk文件,双击运行。点击下一步,出现如下图一内容,这里是设置安装路径,可以默认,用户可自行选择,这里我安装在D:\JAVA\JDK,如下图二。这路径记好,一会设置环境变量需要用到,设置好后点击下一步,过一会会出现安装Jre路径,如下图三,用户自行选择,点击下一步等待安转完毕即可。
右击我的电脑——>属性——>高级系统设置(如下图一)——>环境变量(如下图二).
- 配置jdk
1)新建系统变量JAVA_HOME
变量名:JAVA_HOME;变量值:D:\JAVA\JDK\jdk1.8.0_191
2)编辑系统变量Path
Windows10 电脑,新建变量值:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin; Windows7
电脑,在变量值最后输入%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;注意用;号分隔
3)新建系统变量CLASSPATH变量
变量名:CLASSPATH 变量值:%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar
4)检验
(1)快捷键win+R——> 输入cmd
(2)输入java -version之后,点击回车键
- 安装和配置jmeter
下载后无需安装,解压后即可使用。下图为解压后的目录。
新增JMETER_HOME变量,注意:变量值为你下载后解压的路径。
编辑CLASSPATH变量,加上
%JMETER_HOME%\lib\ext\ApacheJMeter_core.jar;%JMETER_HOME%\lib\jorphan.jar;%JMETER_HOME%\lib\logkit-2.0.jar;
注:如果电脑重没找到CLASSPATH,添加在PATH也可以;
4) 操作完上面的步骤,我们就可以点击Jmeter中bin目录下面的jmeter.bat文件即可打开Jmeter了。
注意:打开的时候会有两个窗口,Jmeter的命令窗口和Jmeter的图形操作界面,不可以关闭命令窗口。
- 添加监控器(放置到需要监控的服务器中)
下载jmeter-plugins-manager-1.4.jar文件,将文件移动到apache-jmeter-5.1.1\lib\ext文件夹下,
点击Options——>plugins-manager(如下图一)
常用的插件有:
用于服务器性能监视的-- PerfMon Metrics Collector;
用于建立压力变化模型的-- Stepping Thread Group;
用于Json解析的-- JSON Path Extractor;
用于展示响应时间曲线的-- Response Times Over Time;
用于展示TPS曲线的-- Transactions per Second;
用于展示以上组合展示的-- Composite Timeline Graph;
点击Avallable Plugins按钮,搜索需要安装的插件,勾选插件前的选框,点击右下角的Apply Changes and Restart JMeter 按钮下载安装插件(如下图)
重新启动Jmeter后,可以看到好多报表。可以重点关注我框的,其余根据实际需求(如果想了解用途,请自行查阅)(如下图)
——>jp@gc - Active Threads Over Time-不同时间的活动用户数量
——>jp@gc - PerfMon Metrics Collector-服务器性能监控
——>jp@gc - Transactions per Second-每秒事务数,服务器每秒处理的事务数
——>jp@gc - Response Times Over Time-响应时间超时,显示每个采样以毫秒为单位的平均响应时间
——>jp@gc - Flexible File Writer-**灵活记录测试结果
——>jp@gc - Transactions per Second-监听动态TPS,用来分析吞吐量。
——>Composite Graph-组合式的监听器。
- 配置本地与其他机器互联
例如:
1.主控机一台为master,ip地址:10.8.88.177
2.负载机一台为slave, ip地址:10.8.88.119
1)主控机和负载机都安装一样的JDK环境和jmeter版本。
2)主控机的配置文件jmeter.properties的设置为如下:
①添加负载机IP,如:remote_hosts=10.8.88.119:1099,10.8.88.177:1099。表示的是要远程控制 的机器,多个机器IP间用逗号分隔,1099为分布式机器的端口号。
②#server.rmi.ssl.disable=false 修改为:server.rmi.ssl.disable=true并且将前面的#注释去掉。
③将#mode=Standard前面的#注释去掉。这个操作是为了让主控机在执行后在察看结果树下能看 到返回的响应信息(repsonse body)
3)负载机的配置文件jmeter.properties的设置为如下:
①#server.rmi.ssl.disable=false 修改为:server.rmi.ssl.disable=true并且将前面的#注释去掉。
②找到remote_hosts=127.0.0.1,把这一行修改为remote_hosts=10.8.88.119:1099(本机ip:端口)。
4)将ServerAgent-2.2.3文件夹放置到需要监控的服务器中(任意位置),在目标机器上启动即可
Windows系统双击startAgent.bat文件
Linux系统启动startAgent.sh文件
如果出现错误,参考如下方法:
1、修改slave负载机的配置文件:
修改slave配置并启动jmeter-server
修改jmeter.properties:
server_port=2009(自定义端口号,避免被占用)
server.rmi.localport=2009(跟上面设置的端口号一致)
server.rmi.ssl.disable=true
修改jmeter-server:
RMI_HOST_DEF=-Djava.rmi.server.hostname=192.168.1.224(绑定本机ip)
(三)创建运行脚本
在控制机10.8.88.177机器上启动jmeter.bat.启动后如下图所示
添加线程组。右键测试计划—add—Threads—Thread Group
添加HTTP请求。右键线程组—add—Sampler—HTTP Request
填写接口数据。
添加需要的监控器,如查看结果树、聚合报告。右键线程组—add—Listener—View Results Tree和Aggregate Report
运行脚本进行访问接口,测试能否正常访问和返回参数。
配置线程组发起数量进行压力测试。
添加同步定时器进行并发。右键http请求—add—Timer—Synchronizing Timer
点击运行按钮开始压测。
(四)分布式压测和监控
在负载机10.8.88.119机器上启动jmeter.server.bat.启动后如下图所示
在负载机10.8.88.119机器上的ServerAgent-2.2.3文件夹中启动startAgent.bat.
在主控机上启动jmeter.bat,打开项目脚本,添加jp@gc - PerfMon Metrics Collector监听器,可以看到如下所示。(注意IP为被监控系统的IP,也就是agent所在IP)
在主控机操作Run–Remote start–10.8.88.119:1099.
在察看结果树,查看是否请求成功以及返回的响应信息,如下图所示
在查看负载机是否有报错,负载机没有报错。如下图所示:
(五)报告生成
- 生成请求页面详情报告-查看结果树
- 生成请求时间、异常、吞吐量等报告-汇总报告
- 根据数据生成性能测试报告
- 根据数据生成性能测试监控报告
Jmeter性能测试-安装和配置、分布式压测配置及服务器性能监控相关推荐
- JMETER性能测试从入门到精通高级篇 - 分布式压测部署之负载机的设置(详解教程)
1.简介 千呼万唤始出来,这一篇感觉写了好久,总想写的清楚明白简洁,但是还是洋洋洒洒写了好多,希望大家喜欢吧!本来打算将这一篇文章是放在性能测试中讲解和分享的,但是有的童鞋或者小伙伴们私下问的太多了, ...
- Jmeter 分布式压测
一.jmeter分布式压测使用场景 1.当一台jmeter并发数达到瓶颈时,需要多台jmeter一台控制机,多台负载机来进行分布式压测 扩大并发数 2.当测试多台服务器时,需要同时通过多个ip压测同一 ...
- 性能测试搭建Jmeter分布式压测与监控
对于运维工程师来说,需要对自己维护的服务器性能瓶颈了如指掌,比如我当前的架构每秒并发是多少,我服务器最大能接受的并发是多少,是什么导致我的性能有问题:如果当前架构快达到性能瓶颈了,是横向扩容性能提升大 ...
- 搭建 Apache Jmeter 分布式压测与监控
1.前言 对于运维工程师来说,需要对自己维护的服务器性能瓶颈了如指掌,比如我当前的架构每秒并发是多少,我服务器最大能接受的并发是多少,是什么导致我的性能有问题:如果当前架构快达到性能瓶颈了,是横向扩容 ...
- jmeter 高并发测试报告_Windows下JMeter分布式压测环境搭建
JMeter是Apache组织开发的开源项目,设计之初用于性能测试,同时它在实现对各种接口的调用方面做得比较成熟,因此,常被用于接口功能测试和性能测试.它能够很好的支持各种常见接口,如HTTP(S). ...
- Jmeter分布式压测介绍、原理及实操(一台master-windows控制机,三台slaves-linux负载机)
前言:大家在使用jmeter压测过程中,可能会度遇到内存溢出的错误,这是为什么呢? 因为jmeter是java写的应用,java应用jvm堆内存heap受负载机硬件限制,虽然我们可以调整堆内存大小,但 ...
- Jmeter分布式压测-windows(master控制机)多个linux(slaves负载机)监测服务器资源(cpu、内存等)
为什么进行jmeter分布式压测? 一.干货解释原因: **原因一:**一台压力机的 Jmeter 默认最大支持 1000 左右的并发用户数(线程数),再大的话,容易造成卡顿.无响应等情况,这是受限于 ...
- Jmeter分布式压测方案
背景: 本地电脑通过Jmeter图形化界面(GUI方式)控制本机及其他远程机器,以它们为压力机,对被测的服务器进行压力测试,并将压测的结果同步到Jmeter图形化界面中,进行分析. 准备: 1.作为压 ...
- 接口测试学习——jmeter分布式压测
分布式压测我理解的就是有一台主控机和几台压力机.主控机通过远程控制压力机启动测试,来实现系统不同级别访问量情况下的性能验证.操作步骤如下: 1.启动jmeter自动化工具,界面显示如下图所示. 2.在 ...
最新文章
- linux lvm使用情况,Linux LVM系列(一)lvm使用
- xml命名空间的作用类似于java中包名所起的限定范围的作用
- java springboot b2b2c shop 多用户商城系统源码 (二): 配置管理...
- 如何用sqlyog实现远程连接mysql
- linux 安装python MySQLdb
- 【开源项目】使用FFMPEG解析H264编码为YUV格式
- 三十二 、K8s审计
- Noark入门之极速体验
- 等价划分测试c语言测试三角形,三角形等价划分法测试用例
- excel替换快捷键_收集一些常用的快捷键
- centos 官网下载
- 服务器显示阵列卡升级,Systemx服务器在BIOS中刷新阵列卡微码
- android 360 root权限获取root权限,安卓手机如何Root 使用360手机助手获取root权限图为教程...
- 计算机无法进行磁盘碎片整理,无法运行磁盘碎片整理
- [Shell命令] tar -cvf -xvf 打包解包文件夹
- 第4讲:C# 入门教程 入门知识(黄菊华NET网站开发、C#网站开发、Razor网站开发教程)
- 2022-08-15 第一组 顾元皓 学习笔记
- 如何学习stm32,怎么学习stm32,不是仅仅看教程,照着写复制代码
- java基于Springboot+vue的医院体检预约挂号系统 elementui
- 知网普刊CNKI计算机类期刊,录用98%以上,最快1个月可录用
热门文章
- Go语言 面试 针对初级、应届、实习
- Flvplayer.swf 代码引用方法:
- WebAssembly 基础
- 荣幸获得CSDN博客之星第三名,感激不尽!Python
- 人民网好句摘抄——摘抄自既“知止”,也“知进”(金台随笔)马明阳
- arduino数字时钟元件_数字元器件基础
- 从分形图片用Box counting方法计算分形维数的一个例子
- linux superblock位置,Linux下恢复EXT3 Superblock的正确方法
- es(elasticsearch)查询数据出现异常Result window is too large, from + size must be less than or equal to
- 猕猴桃输入法高手指南