Jmeter 在linux下的分布式压测

0、将 windows机器作为master 控制机(同时也兼做负载机slave), linux机器作为 负载机 slave。

1、linux环境安装 :
(1)、在linux(centos)下需要安装JDK (1.8)
和 JMETER (5.0)
jdk文件为:jdk-8u131-linux-i586.tar.gz

jmeter 文件为(跟windows下的是同样的文件,本身是java编写,跨平台):apache-jmeter-5.0.zip(2)、在linux的root目录下新建lsq目录,将jdk、jmeter安装文件拷贝到linux的 /root/lsq/目录下

(3)、解压jdk、 jmeter (解压即安装)到当前目录
#cd /root/lsq
#jar -xzvf jdk-8u131-linux-i586.tar.gz
#unzip apache-jmeter-5.0.zip

(4)、修改环境变量
#vi /etc/profile
添加这几行(路径根据实际情况修改):

JAVA_HOME=/root/lsq/jdk1.8.0_131
JRE_HOME=$JAVA_HOME/jre
JMETER_HOME=/root/lsq/apache-jmeter-5.0
CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin:$JMETER_HOME/bin/

修改之后运行 source /etc/profile  让配置生效
#source /etc/profile

验证jdk 安装是否成功,能出现java版本说明安装成功
#java -version

验证jmeter安装是否成功
#jmeter -v

2、分布式环境配置:
#cd /root/lsq/apache-jmeter-5.0/bin
#vi jmeter.properties
修改 jmeter bin目录下的jmeter.properties
文件,修改
remote_hosts 的ip 127.0.0.1 为机器ip
也可以修改端口 server_port 为一个未被使用的端口,如下图所示:

同时jmeter 4.0以上还有修改jmeter.properties文件的另外一个ssl的项 ,把false改为 true:
server.rmi.ssl.disable=true

修改完成
,slave端要启动 jmeter服务 :
#jmeter-server

此时,发现报错:

回环地址的问题 ,只改 jmeter-server下的(尽量不要去改
系统级的配置 比如/etc/hosts的ip ):

修改后保存,再次启动 jmeter-server ,成功,如下图:

另外:默认情况下,RMI使用动态端口(比如上图的58040)为JMeter服务器引擎。 这可能会导致问题,比如被防火墙屏蔽,
所以您可以定义JMeter属性 server.rmi.localport控制这个端口号,没有防火墙的问题,则不需要改

3、master端(windows)配置,
同样修改 jmeter bin目录下的jmeter.properties
文件中的配置,
remote_hosts=slaveip1:端口1,slaveip2:端口2 ,如果master不想参加压测,可以把127.0.0.1 去掉
如: remote_hosts=127.0.0.1:2099,192.168.123.86:2099
server_port 改成你想要的端口,
如: server_port=2099

修改server.rmi.ssl.disable=true(flase改为true)

4、配置完成  
,打开windows下的jmeter,能看到 运行--》远程启动 里,有我们设置的 负载机的ip和端口

5、windows 控制机自己作为 负载机也要开启 jmeter-server.bat 如下图:

6、执行 压测:

使用报表前先修改Jmeter的bin目录下reportgenerator.properties
修改jmeter.reportgenerator.overall_granularity=1000(报表统计的间隔时间,默认是60000毫秒即分钟,改成1秒)

F:\srcipt\Jmeter>jmeter -n -t .\day7-bugfree.jmx -l
day75.jtl -e -o .\res15 -j .\log\15.log -R 192.168.123.86

7、其它说明:

  1、调度机(master)和执行机(slave)最好分开,由于master需要发送信息给slave并且会接收slave回传回来的测试数据,所以mater自身会有消耗,所以建议单独用一台机器作为mater。

  2、参数文件:如果使用csv进行参数化,那么需要把参数文件在每台slave上拷一份且路径需要设置成一样的,比如都放置在bin目录下 。注意:不同的负载机参数化数据要不一致,否则会重复数据。!!!

  3、每台机器上安装的Jmeter版本和插件最好都一致,否则会出一些意外的问题。

Jmeter 在linux下的分布式压测的更多相关文章

  1. jmeter(二十七)分布式压测注意事项

    之前的博客:jemter(二十三):分布式测试简略的介绍了利用jmeter做分布式测试的方法,当时只是介绍了背景和原因,以及基本的配置操作,有同学说写得不够详细. 正好今年双十一,我司的全链路压测,也 ...

  2. Linux环境下进行分布式压测踩过的坑

    背景:公司为了满足大并发的情况,需要测试组配合,就需要分布式压测,这里我把我踩过坑都记录下来: 环境:Linux + jmeter-v.5.1.1;使用3台2核4G的压力机: Q1: Server f ...

  3. Jmeter(四十七) - 从入门到精通高级篇 - 分布式压测部署之负载机的设置(详解教程)

    1.简介 千呼万唤始出来,这一篇感觉写了好久,总想写的清楚明白简洁,但是还是洋洋洒洒写了好多,希望大家喜欢吧!本来打算将这一篇文章是放在性能测试中讲解和分享的,但是有的童鞋或者小伙伴们私下问的太多了, ...

  4. jmeter 分布式压测(Linux)

    之前一篇博文写的是如何在Linux上使用jmeter压测,这篇介绍下Linux上jmeter的分布式压测. 和windows上的分布式类似,需要配置agent节点和控制机 一.Agent节点配置 1. ...

  5. JMeter在linux上分布式压测步骤(二)

    哈喽,我又来了~ 前提:三台linux虚拟机,一台作为master,另外两台作为slave. 一.server端 1.修改1099端口,client和server通信的端口,可以不修改,默认就是109 ...

  6. jmeter分布式压测

    stop.sh需要跑Jmeter的服务器上安装Jmeteryum install lrzsz 安装rz.sz命令rz jemter的压缩包 拷贝到/usr/local/tools下面unzip apa ...

  7. jmeter之分布式压测

    很多性能大牛说一台机器的压测其实不准确,于是搜索网上的分布式压测练习了一番 目录 1.环境准备 2.控制机和压测机配置 3.执行分布式压测 1.环境准备 1.1准备一台windows作为控制机(mas ...

  8. JMeter分布式压测实战(2020年清明假期学习笔记)

    一.常用压力测试工具对比 简介:目前用的常用测试工具对比 1.loadrunner 性能稳定,压测结果及颗粒度大,可以自定义脚本进行压测,但是太过于重大,功能比较繁多. 2.Apache ab(单接口 ...

  9. jmeter进行分布式压测过程与 注意事项

    jmeter命令行运行但是是单节点下的, jmeter底层用java开发,耗内存.cpu,如果项目要求大并发去压测服务端的话,jmeter单节点难以完成大并发的请求,这时就需要对jmeter进行分布式 ...

随机推荐

  1. 『OpenCV3』处理视频&摄像头

    在opencv中,摄像头和视频文件并没有很大不同,都是一个可以read的数据源,使用cv2.VideoCapture(path).read()可以获取(flag,当前帧),对于每一帧,使用图片处理函数 ...

  2. vijos1746 floyd

    小D的旅行 旅行是一件颇有趣的事情,但是在旅行前规划好路线也很重要. 现在小D计划要去U国旅行. U国有N个城市,M条道路,每条道路都连接着两个城市,并且经过这条道路需要一定的费用wi. 现在小D想要 ...

  3. OAF 交互式列车 上一步 下一步的简单使用

    在实际的需求中,我们往往会遇到在下一步的时候验证某些参数,而上一步不需要验证. 这个是非常粗暴的解决方式 if( "goto".equals(pageContext.getPara ...

  4. linux分析、诊断及调优的必备“杀器”之一

    下面分别列出linux分析.诊断及调优时用到的工具,并分别进行说明,以方便自己和其他同学参考学习,禁止转载. 1.top top - 02:06:59 up 4 days, 17:14, 2 user ...

  5. javaScript 变量提升 var let const,以及JS 的解析阶段和执行阶段

    我们先来看一道面试题,大家猜想一下,下面这段代码,打印出来的结果是什么 var name = 'World!'; (function () { if (typeof name === 'undefin ...

  6. 数据库schema的简介

    [参考]自百度百科 数据库中的Schema,为数据库对象的集合,一个用户一般对应一个schema. 官方定义如下: A schema is a collection of database objec ...

  7. 关于如何使用cg中的discard/clip

    Pass { ZTest Always Cull Off ZWrite Off Fog { Mode off } Blend Off CGPROGRAM #pragma vertex vert_img ...

  8. 用MyEclipse JPA创建项目(二)

    MyEclipse 3.15 Style——在线购买低至75折!火爆开抢>> [MyEclipse最新版下载] 本教程介绍了MyEclipse中的一些基于PA的功能. 阅读本教程时,了解J ...

  9. 【重大更新】DevExpress v17.2新版亮点—Bootstrap篇(二)

    用户界面套包DevExpress v17.2日前终于正式发布,本站将以连载的形式为大家介绍各版本新增内容.本文将介绍了Bootstrap Controls v17.2 的CardView.Charts ...

  10. bga

    本文记录在bga布线的难题. 1一开始就要预留好布线局域. 最近出现布线太密,修改时就麻烦了. http://bbs.elecfans.com/jishu_521995_1_1.html