压测必经之路,Jmeter分布式压测教程

01、分布式压测原理

Jemter分布式压测是选择其中一台作为调度机(master),其他机器作为执行机(slave);当然一台机器也可以既做调度机,也做执行机。

调度机执行脚本的时候,master将会jmx脚本分发到slave上,slave拿到脚本后以非GUI的形式开始执行。

slave执行完毕后将结果回传给master,并由master进行结果的汇总。

02、环境搭建

2.1 环境准备

master:Windows10,JMeter版本5.1.1,jdk版本1.8;

slave:2台linux虚拟机(CentOS 7),JMeter版本与master一致,5.1.1,jdk版本1.8;

总结:slave上JDK和Jmeter版本尽量和master上保持一致。

2.2 slave机器配置

关闭各slave机器上防火墙

systemctl stop firewalld

关闭各slave机器上SSL配置。RMI的默认传输机制将使用SSL,SSL需要密钥和证书才能工作。

解决方法有两种:一种是启动bin目录下的create-rmi-keystore脚本,另一种是不使用SSL。这里采用第二种。

修改bin目录下的jmeter.properties文件vim jmeter.propertiesserver.rmi.ssl.disable=true

进入bin目录下编辑文件

将注释去掉且值改为true

设置服务器主机IP

编辑bin目录下的jmeter-server文件,取消RMI_HOST_DEF的注释项,固定设置当前Linux主机查询到的IP。

进入bin目录下编辑文件

取消注释且修改IP

启动Jemter服务

启动bin目录下的jmeter-server文件

2.3 master机器配置

修改配置文件

打开bin目录下的jmeter.properties文件,修改remote_hosts的值。修改为两台salve机器的ip及端口。

03、脚本及执行

3.1 参数化问题

如果脚本中使用到参数化文件,需要将CSV参数化文件上传到各个salve机器上,且路径要相同,然后再脚本CSV文件路径这里配置对应的参数。

3.2 GUI启动测试

运行->远程启动。查看配置的salve机器IP

运行->远程启动所有。启动分布式压测

3.3 命令行启动测试

上面是使用GUI图形上去启动slave机器去运行压测,也可以直接通过命令行启动压测并生成报告。

jmeter -n -t G:\Test\1.1login_linux.jmx -l G:\Test\result\1.jtl -e -o G:\Test\html\1 -R 192.168.30.132:1099,192.168.30.130:1099
jmeter -n -t jmx脚本路径 -l jtl文件路径 -e -o 报告路径 -R salve的IP地址:端口,salve的IP地址:端口

需要注意的是,执行命令中的jtl文件路径和报告路径需要是不存在,否则会出错。
 

总结:

感谢每一个认真阅读我文章的人!!!

作为一位过来人也是希望大家少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助。

 

文档获取方式:

加入我的软件测试交流群:1007119548免费获取~(同行大佬一起学术交流,每晚都有大佬直播分享技术知识点)

这份文档,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!

以上均可以分享,只需要你搜索vx公众号:程序员雨果,即可免费领取

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/308449.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

C++ 多态以及多态的原理

文章目录 多态的概念多态的构成条件虚函数的重写虚函数重写的两个例外 重载、重写(覆盖)、重定义(隐藏)对比C11 final 和 override关键字抽象类接口继承和普通继承多态的原理虚函数表多态的原理 单继承和多继承关系的虚函数表单继承中的虚函数表多继承中的虚函数表 多态的概念 …

C#实现个人账本管理系统

git地址:https://gitee.com/myshort-term/personal-ledger-management-system 1.系统简介 LedgerManagementSystem是一个小型的个人账本管理系统,可对收支项目进行增加、删除、修改、查询以及导入和导出。可对每日的各类收支项目进行汇总并查看和修改收…

vue3 ts defineProps、defineEmits、defineExpose、defineOptions、defineSlots

文章目录 前言一、defineProps二、defineEmits三、defineExpose四、defineOptions( Vue3.3 新特性)五、defineSlots(Vue3.3 新特性) 前言 本章我们来讲解vue3 ts 中 defineProps、defineEmits、defineExpose、defineOptions、defineSlots的使用及作用。 …

x-cmd pkg | you-get - web 媒体内容下载工具

目录 简介首次用户功能特点竞品和相关作品进一步阅读 简介 You-Get 是一个开源的命令行小型下载工具,用于从各种网站下载视频、音频和其他媒体文件。 它可以解析和下载嵌套在网页中的媒体,能从 YouTube、优酷、Niconico 、bilibili 等热门网站下载视频、…

C++ vector模拟实现

C vector模拟实现 一.我们要实现的大致框架1.STL库中是如何实现的呢?1.迭代器2.成员变量3.vector的特性4.vector的成员变量大致情况 2.我们要实现的大致框架3.前言 二.具体实现1.迭代器,begin,end2.无参构造,析构,简单函数3.push_back4.reserve1.reserve的第一大坑点:野指针问…

React Native 桥接原生常量

一、编写并注册原生常量方法 在 SmallDaysAppModule 这个模块中有一个方法 getConstans ,重载这个方法就可将自定义的常量返回,系统会自行调用该方法并返回定义的常量将其直接注入到 JS 层,在 JS 层直接获取即可。 二、JS 层获取原生常量&am…

电脑USB接口不同颜色的含义

当你看到笔记本电脑或台式机的USB端口时,你会发现USB端口的颜色很多;这些颜色可不只是为了好看,实际上不同颜色代表着不同的性能,那么这些带颜色的USB端口都是什么含义呢,下面就具体介绍下不同颜色代表的含义。-----吴…

钉钉逐浪AI Agent

文|郝 鑫 编|刘雨琦 “大公司代表落后生产力,是慢半拍的”,“小创新靠大厂,大创新仍然要靠小厂”,这是以李彦宏和王小川为代表的创业老炮,在2023年总结出来的创新规律,从移动互…

单片机原理及应用:中断嵌套

​中断嵌套是指中断系统正在执行一个中断服务时,有另一个优先级更高的中断提出中断请求,这时会暂时终止当前正在执行的级别较低的中断源的服务程序,去处理级别更高的中断源,待处理完毕,再返回到被中断了的中断服务程序…

阿里云的通义千问VS百度的文心一言~~

最近人工智能热度迅速升温,我体验了一下各大厂商的大模型的能力,发现他们确实很智能! 我想问一下“南方小土豆”这个梗是如何火起来的,结果如下: 文心一言: 回答的比较准确,但有一些过于“官方”…

ChatGPT4+Python近红外光谱数据分析及机器学习与深度学习建模进阶应用

2022年11月30日,可能将成为一个改变人类历史的日子——美国人工智能开发机构OpenAI推出了聊天机器人ChatGPT3.5,将人工智能的发展推向了一个新的高度。2023年4月,更强版本的ChatGPT4.0上线,文本、语音、图像等多模态交互方式使其在…

vue知识-03

购物车案例 要实现的功能&#xff1a; 1、计算商品总价格 2、全选框和取消全选框 3、商品数量的增加和减少 <body> <div id"app"><div class"row"><div class"col-md-6 col-md-offset-3"><h1 class"text-center…

SpringCloudAlibaba微服务架构实战派上下册技术交流!

另外我的新书RocketMQ消息中间件实战派上下册&#xff0c;在京东已经上架啦&#xff0c;目前都是5折&#xff0c;非常的实惠。 https://item.jd.com/14337086.html​编辑https://item.jd.com/14337086.html “RocketMQ消息中间件实战派上下册”是我既“Spring Cloud Alibaba微…

Springboot药物不良反应智能监测系统源码

一、系统简介 ADR指的是药品不良反应&#xff0c;即在合格药品在正常用法用量下&#xff0c;出现与用药目的无关或意外的有害反应。ADR数据辨别引擎、药品ADR信号主动监测引擎、ADR处置行为分析引擎。ADR数据辨别引擎&#xff0c;通过主动监测患者具象临床指标&#xff0c;比如…

Simpy简介:python仿真模拟库-03/5

一、说明 在过去的两篇文章中&#xff0c;我们了解了 simpy 的基础知识、声明变量和处理表达式。值得注意的例子包括评估导数和积分。现在&#xff0c;让我们继续使用函数。 二、SymPy — 函数类 SymPy 包包含 sympy.core.function 模块中的 Function 类。该类作为各种数学函数…

腾讯云优惠券介绍、领取方法及使用教程

腾讯云作为国内领先的云服务提供商&#xff0c;为了吸引更多的用户使用其产品&#xff0c;经常会推出各种优惠券活动。本文将详细介绍腾讯云的优惠券、领取方法和使用教程。 一、腾讯云优惠券介绍 腾讯云优惠券是腾讯云为了吸引用户使用其产品而推出的促销活动。用户可以通过领…

软件测试工程师,从6K到25k的测试之路养成,一路狂飙...

目录&#xff1a;导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结&#xff08;尾部小惊喜&#xff09; 前言 1、技术方向 就技…

静态网页设计——滑板官网(HTML+CSS+JavaScript)(dw、sublime Text、webstorm、HBuilder X)

前言 声明&#xff1a;该文章只是做技术分享&#xff0c;若侵权请联系我删除。&#xff01;&#xff01; 感谢大佬的视频&#xff1a;https://www.bilibili.com/video/BV1Cw411u7hj/?vd_source5f425e0074a7f92921f53ab87712357b 源码&#xff1a;https://space.bilibili.com…

基于传统机器学习的项目开发过程——@挑大梁

1 场景分析 1.1 项目背景 描述开发项目模型的一系列情境和因素&#xff0c;包括问题、需求、机会、市场环境、竞争情况等 1.2. 解决问题 传统机器学习在解决实际问题中主要分为两类&#xff1a; 有监督学习&#xff1a;已知输入、输出之间的关系而进行的学习&#xff0c;从而…

statsmodels.tsa 笔记 detrend(去趋势)

1 基本使用方法 statsmodels.tsa.tsatools.detrend(x, order1, axis0) 2 参数说明 x数据。如果是二维数组&#xff0c;那么每一行或每一列将独立地去除趋势&#xff0c;但趋势的阶数是一样的。order趋势的多项式阶数。0 表示常数趋势&#xff08;即没有趋势&#xff09;&…