压测工具Jmeter使用-1

2024-06-20 23:28
文章标签 压测 jmeter 工具 使用

本文主要是介绍压测工具Jmeter使用-1,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、安装部署

依赖:Java
windows安装
1.配置环境变量:新建JMETER_HOME系统环境变量,值设置为Jmeter的安装路径,
D:\Program Files (x86)\Jemter\apache-jmeter
2.运行Jemeter:安装路径下,双击bin目录下的jmeter.bat,打开界面

Linux安装
1.上传jmeter包到服务器上:apache-jmeter-5.3.tgz
2.解压到当前传的目录:jmeter
tar zxvf apache-jmeter-4.0.tgz jmeter
3.然后把解压的文件配置到对应的环境变量:
export JMETER_HOME=/root/jmeter
export CLASSPATH=$JMETER_HOME/lib/ext/ApacheJMeter_core.jar:$JMETER_HOME/lib/jorphan.jar:$CLASSPATH
export PATH=$JMETER_HOME/bin:$PATH:$HOME/bin
4.source /etc/profile 目的让配置文件生效
5.[root@yace01 ~]# jmeter -v
6.创建路径 /opt/wlei/jmeter/test/并执行监控
nohup sar -u 10 >>/opt/wlei/jmeter/test/cpu.log &
nohup iostat -x 10 -t>>/opt/wlei/jmeter/test/io.log &
nohup sar -n DEV 10  >>/opt/wlei/jmeter/test/net.log &
注意:yum install sysstat #安装sar命令

二、Jmeter脚本

使用Jmeter做http脚本,基本分为5个步骤
1、添加线程组
TestPlan右击-》添加Thread Group
2、添加http请求
Thread Group右击-》添加HTTP Request
3、在http请求中写入接口url、消息头和消息体、请求方式和参数
例如:PATH中填   ${__StringFromFile(E:\jmeter\rongqidel\data.txt,,,)}
4、添加断言及查看结果树
(1)响应断言:对Web请求的响应结果进行验证
           鼠标右击http请求->添加->断言->Response Assertion
           对接口返回信息可实现”包括、匹配、相同、或等方式校验
(2)Duration Assertion断言:对响应时间进行验证
           鼠标右击http请求->添加->断言-> Duration Assertion
           对响应时间进行ms级的验证
(3)Size Assertion断言:对响应报文包含字节数进行验证
           鼠标右击http请求->添加->断言-> Size Assertion
           是否包含正确数量的byte。可定义(=, !=, >, <, >=, <=)
(4)对断言结果进行验证可添加监控器
       鼠标右击http请求->添加->监控器->断言结果
View Results Tree查看结果树
Summary Report汇总报告
Aggregate Report聚合报告
5.修改jmx文件并执行压测
jmeter -n -t rongqi-del-100cc.jmx -l rongqi-del-100cc.jtl
导出jtl文件到windows机器可视化加载,得出tps和响应时延
6.查看结果树获取测试结果

三、多机连跑

使用jmeter-linux负载机,windows主控机的配置
1.肉鸡配置及启动
(1)bin/jmeter文件修改堆载信息
HEAP="-Xms10G -Xmx10G"
(2)bin/jmeter-server文件添加主机(去注释)
RMI_HOST_DEF=-Djava.rmi.server.hostname=肉鸡自己IP(主)
(3)bin/jmeter.properties文件修改
remote_hosts=10.19.232.17(主机),127.0.0.1
server.rmi.create=true 
server.rmi.ssl.disable=true
(4)启动负载机
cd /opt/apache-jmeter-3.1/bin/
./jmeter-server -Djava.rmi.server.hostname=192.168.6.6(负载机自己IP)

修改set ARGS=%DUMP% %HEAP% %NEW% %SURVIVOR% %TENURING% %PERM% %DDRAW% %rmi_host%
2.主控机添加要使用的负载机
新增需要监控的IP和端口,IP就是负载机的IP,端口默认为1099
remote_hosts=localhost:1099,192.168.6.6:1099
server.rmi.ssl.disable=true
3.主机上启动负载机
Run-》Remote start
当负载机中出现finished,表明运行结束

4.默认情况下,负载机是只会将一些特定的数据反馈给控制机的,通常不会包含服务器的响应。
则需要修改以下配置(包括控制机和负载机)。
jmeter.save.saveservice.output_format=xml
jmeter.save.saveservice.response_data.on_error=true
#Remote batching support
mode=Standard

5.第三方文件(参数文件),需要人为的复制分发到负载机。脚本中的访问路径:
·如果控制机和负载机的操作系统类型一致,则建议使用绝对路径。
·如果控制机和负载机的操作系统类型不一致,则只能使用相对路径。
·在本地(控制机上),当前路径是脚本所在路径。
·在远程(负载机上),当前路径是Jmeter的bin目录所在路径。
联机负载时,要保证控制机和负载机的Jmeter的版本、JAVA环境的一致性。
联机负载时,脚本的运行环境是负载机的环境。

四、Jmeter脚本中的测试计划

 1、独立运行每个线程组:用于控制测试计划中的多个线程组的执行顺序。
                 未勾选:有多个线程组时,其随机启动执行;
            勾选:多个线程组时,等待前一个线程组执行完成后才开始下一个线程组 ;
       补充说明:线程组中的取样器的执行顺序:默认是从上到下执行。交替控制器、随机控制器、随机顺序控制器和循环控制器等可以改变取样器的执行顺序。
2、主线程结束后运行tearDown线程组:
  当线程组停止运行时仍继续运行tearDown线程组,该选项结合线程组(在取样器执行错误后要执行的动作)的执行配置使用。
3、函数测试模式:只有当你需要记录每个请求从服务器取得的数据到文件时才需要选择函数测试模式。选择这个选项很影响性能。在调试脚本的时候,可以开启,但是在压测数量时建议关闭。
4.添加目录或jar包到ClassPath:
  添加文件或jar包,此功能最常用于调用外部jar包。当脚本需要调用外部的java文件或jar包时,可以把jar包路径添加到这里,然后在beanshell中直接import进来,并调用jar包中的方法。

五、Jmeter中的线程组

same user on each interation就是选择每次运行是是否使用同一个cookie
【选中】是 用同一个 也就是每次循环都是同一个用户
【不选中】不需要 每次循环都用新的cookie 也就是每次循环都是新的用户

延迟创建线程直到需要

ramp up的值应该是启动全部线程所需的时间

六、Jmeter中计数器使用

Number format:格式
  (1、不填写时,会采用数字模式,如:001,设置为1
  (2、如果需要特定的格式,需要手动配置,如:想获取00001,就需要配置为:00000
与每用户独立的跟踪计数器:
  (1、默认不勾选,标识全局计数,表示每一个线程/循环每次获取不同的值。
  (2、如果勾选,表示每一个线程的相同循环时都是用的同一个值;
        <boolProp name="CounterConfig.per_user"></boolProp>
reset counter on each thread group iteration:
  只有在勾选每用户独立,才可以设置。
        如果勾选,则每次线程循环都会重置计数器的值,每次线程组迭代,都会重置计数器的值,当线程组是在一个循环控制器内时比较有用
        <boolProp name="CounterConfig.reset_on_tg_iteration"></boolProp>

在同一个线程组中调用多次或者循环调用该变量,该变量的值都是固定的,进入其他线程组后才增加的

这篇关于压测工具Jmeter使用-1的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1079555

相关文章

C语言中联合体union的使用

本文编辑整理自: http://bbs.chinaunix.net/forum.php?mod=viewthread&tid=179471 一、前言 “联合体”(union)与“结构体”(struct)有一些相似之处。但两者有本质上的不同。在结构体中,各成员有各自的内存空间, 一个结构变量的总长度是各成员长度之和。而在“联合”中,各成员共享一段内存空间, 一个联合变量

揭秘未来艺术:AI绘画工具全面介绍

📑前言 随着科技的飞速发展,人工智能(AI)已经逐渐渗透到我们生活的方方面面。在艺术创作领域,AI技术同样展现出了其独特的魅力。今天,我们就来一起探索这个神秘而引人入胜的领域,深入了解AI绘画工具的奥秘及其为艺术创作带来的革命性变革。 一、AI绘画工具的崛起 1.1 颠覆传统绘画模式 在过去,绘画是艺术家们通过手中的画笔,蘸取颜料,在画布上自由挥洒的创造性过程。然而,随着AI绘画工

墨刀原型工具-小白入门篇

墨刀原型工具-小白入门篇 简介 随着互联网的发展和用户体验的重要性越来越受到重视,原型设计逐渐成为了产品设计中的重要环节。墨刀作为一款原型设计工具,以其简洁、易用的特点,受到了很多设计师的喜爱。本文将介绍墨刀原型工具的基本使用方法,以帮助小白快速上手。 第一章:认识墨刀原型工具 1.1 什么是墨刀原型工具 墨刀是一款基于Web的原型设计工具,可以帮助设计师快速创建交互原型,并且可以与团队

Tolua使用笔记(上)

目录   1.准备工作 2.运行例子 01.HelloWorld:在C#中,创建和销毁Lua虚拟机 和 简单调用。 02.ScriptsFromFile:在C#中,对一个lua文件的执行调用 03.CallLuaFunction:在C#中,对lua函数的操作 04.AccessingLuaVariables:在C#中,对lua变量的操作 05.LuaCoroutine:在Lua中,

大学湖北中医药大学法医学试题及答案,分享几个实用搜题和学习工具 #微信#学习方法#职场发展

今天分享拥有拍照搜题、文字搜题、语音搜题、多重搜题等搜题模式,可以快速查找问题解析,加深对题目答案的理解。 1.快练题 这是一个网站 找题的网站海量题库,在线搜题,快速刷题~为您提供百万优质题库,直接搜索题库名称,支持多种刷题模式:顺序练习、语音听题、本地搜题、顺序阅读、模拟考试、组卷考试、赶快下载吧! 2.彩虹搜题 这是个老公众号了 支持手写输入,截图搜题,详细步骤,解题必备

Vim使用基础篇

本文内容大部分来自 vimtutor,自带的教程的总结。在终端输入vimtutor 即可进入教程。 先总结一下,然后再分别介绍正常模式,插入模式,和可视模式三种模式下的命令。 目录 看完以后的汇总 1.正常模式(Normal模式) 1.移动光标 2.删除 3.【:】输入符 4.撤销 5.替换 6.重复命令【. ; ,】 7.复制粘贴 8.缩进 2.插入模式 INSERT

Lipowerline5.0 雷达电力应用软件下载使用

1.配网数据处理分析 针对配网线路点云数据,优化了分类算法,支持杆塔、导线、交跨线、建筑物、地面点和其他线路的自动分类;一键生成危险点报告和交跨报告;还能生成点云数据采集航线和自主巡检航线。 获取软件安装包联系邮箱:2895356150@qq.com,资源源于网络,本介绍用于学习使用,如有侵权请您联系删除! 2.新增快速版,简洁易上手 支持快速版和专业版切换使用,快速版界面简洁,保留主

如何免费的去使用connectedpapers?

免费使用connectedpapers 1. 打开谷歌浏览器2. 按住ctrl+shift+N,进入无痕模式3. 不需要登录(也就是访客模式)4. 两次用完,关闭无痕模式(继续重复步骤 2 - 4) 1. 打开谷歌浏览器 2. 按住ctrl+shift+N,进入无痕模式 输入网址:https://www.connectedpapers.com/ 3. 不需要登录(也就是

Windows/macOS/Linux 安装 Redis 和 Redis Desktop Manager 可视化工具

本文所有安装都在macOS High Sierra 10.13.4进行,Windows安装相对容易些,Linux安装与macOS类似,文中会做区分讲解 1. Redis安装 1.下载Redis https://redis.io/download 把下载的源码更名为redis-4.0.9-source,我喜欢跟maven、Tomcat放在一起,就放到/Users/zhan/Documents

Toolbar+DrawerLayout使用详情结合网络各大神

最近也想搞下toolbar+drawerlayout的使用。结合网络上各大神的杰作,我把大部分的内容效果都完成了遍。现在记录下各个功能效果的实现以及一些细节注意点。 这图弹出两个菜单内容都是仿QQ界面的选项。左边一个是drawerlayout的弹窗。右边是toolbar的popup弹窗。 开始实现步骤详情: 1.创建toolbar布局跟drawerlayout布局 <?xml vers