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

哈喽,我又来了~

前提:三台linux虚拟机,一台作为master,另外两台作为slave。

一、server端

1、修改1099端口,client和server通信的端口,可以不修改,默认就是1099

2、启动jmeter-server

(这里启动的时候可以看到ip后面的端口不是1099,这里不用管,1099是client和server的通信端口,和这个没有关系)

二、client端:配置master和slave

1、进入到jmeter的bin目录下,打开jmeter.properties

cd  /opt/apache-jmeter-5.1.1/bin

vi   jmeter.properties

可能会遇到打不开的权限问题:

这里使用:chmod 777 filename  ,然后再重新就可以打开了。

在vi命令下使用 /find,   find代表你想要查找的字符串。

2、slave(执行机)上的配置:多个slave机的话,则都要这样配置

(1)查找到并取消这段配置的注释 server.rmi.ssl.disable=false ,false改成true。

(2). 输入命令:jmeter-server -Djava.rmi.server.hostname=10.0.1.120 ,启动 anget 节点。jmeter-server 后面的参数指定 agent 的 IP

这里是启动slave上的jmeter服务。如下图出现则启动成功。(这里和windows里点击启动jmeter-server.bat一样)

三、master(控制机)上的配置:

打开jmeter的配置文件后,查找remote_hosts,然后修改为执行机的ip,中间用逗号,隔开。

写上两个slave机的ip,这里写执行机slave的ip和端口,可以写多个。

四、开始压测

多台压测机器分布式压测:

1、三台Linux服务器都要安装相同版本Jmeter,尽量保证安装路径一致;

2、在三台Jmeter机器上放置同样的jmx脚本,脚本的聚合报告中,设置结果写入文件路径:

/usr/local/apache-jmeter-5.1.1/jmx/logs/createOrderResult${__time(YMD)}${__time(HMS)}.jtl

会将压测执行结果放入到/usr/local/apache-jmeter-5.1.1/jmx/logs目录下,并自动生成带有日期时间戳的jtl文件。

这里生成聚合报告的路径根据自己情况而写。

五、运行脚本

运行命令: jmeter -n -t test.jmx -R 10.1.44.122,10.1.44.123 -l test.jtl  或  jmeter -n -t test.jmx -r -l test.jtl

参数 n:非gui运行

t:指定测试脚本

R:指定多少个 agent 启动并参与测试

r: 代表全部 agent 启动并参与测试

l:生成测试结果文件

这里的需要进入到该该脚本的目录,执行该命令,才可以直接写上面的test.jmx,否则就要写上绝对路径。

后面test.jtl聚合报告,也可以指定任意保存的路径,前提是不要有文件名和它重复。

出现的坑!!!!!

(1)启动jmeter-server服务时,找不到文件

解决办法:

方式1、将jmeter.properties的ssl.disable改成true(不进行文件校验)和上面的一样。

方式2、如果slave机在Linux机上,就运行create-rmi-keystore.sh文件;如果是slave机在window上,就运行create-rmi-keystore.bat文件

运行后,自行填写相关信息

运行后,bin目录下会多出一个rmi_keystore.jks文件

这个文件拷贝到想要运行的slave机上,就不用方法1就可以,就是个文件校验的问题

原文地址:https://www.cnblogs.com/wuzm/p/10877974.html

时间: 2024-10-12 21:13:21

JMeter在linux上分布式压测步骤(二)的相关文章

JMeter在linux上分布式压测遇到的坑(三)

master和slave机要在同一网段内,才能做分布式(Jmeter要配环境变量,这样不用手动起server) 分布式不成功,解决方案: 1.master端和slave端要ping通 2.ping通后,telnet ip port (Linux端),看一下1099端口是否被占用 3.防火墙 4.jmeter的log,如果请求发过去,但是没有返回结果,看看网段的问题 主要步骤: master端修改: 1.修改remote_hosts=ip:port:改成要启动的Linux机的ip以及端口 slav

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

背景:公司为了满足大并发的情况,需要测试组配合,就需要分布式压测,这里我把我踩过坑都记录下来: 环境:Linux + jmeter-v.5.1.1;使用3台2核4G的压力机: Q1: Server failed to start: java.rmi.server.ExportException: Listen failed on port: 0; nested exception is: java.io.FileNotFoundException: rmi_keystore.jks A1:解决思

接口测试学习——jmeter分布式压测

分布式压测我理解的就是有一台主控机和几台压力机.主控机通过远程控制压力机启动测试,来实现系统不同级别访问量情况下的性能验证.操作步骤如下: 1.启动jmeter自动化工具,界面显示如下图所示. 2.在"测试计划"单击鼠标右键,选择[添加]->[Threads(Users)]->[线程组],添加一个线程组. 3.添加线程以后,设置线程组. "线程组"可以类似于虚拟用户组,设置"线程数"为100,即我们要测试的是100个用户并发的情况:&

jmeter分布式压测(简单版)

需要使用jmeter模拟大并发的情况时,单台压测机不能满足需求,可进行分布式压测. 简单来说就是,多台机器同时安装jmeter,选择一台机器作为调度机,其他作为压力机.进行相应的配置后,就可以用调度机操控压力机发起请求. 如何配置(以Windows为例): 1.压力机: 1)执行当前压力机下jmeter安装包bin目录下的jmeter-server的批处理文件,此时该机器上启动一个java进程,并随机分配端口,监听来自调度机的请求. 但是这里我们需要配置成固定端口方式,否则调度机远程启动压力机时

第一周:jmeter分布式压测简介

在我们日常的测试工作中经常会需要对系统进行压测,一般来说,使用jmeter一台电脑支持的最大并发数 为200,那么当我们压测时需要更大的并发数时,我们就需要使用多台电脑来进行分布式压测. 第一步:首先要准备多台电脑,全部安装了jmeter,并且这些电脑都能互相ping通. 第二步:修改主机中jmeter的配置文件,在jmeter的bin目录下找到jmeter.properties文件,编辑该文件,找到 remote_hosts字段,在该字段后面添加其他电脑的IP地址,其中端口号默认为1099.

分布式压测实战步骤(不包含脚本的编写)

1.关注压测内存和CPU的使用 使用分布式压测 命令 举例:jmeter -n -t /Users/jack/Desktop/remote.jmx -r -l /Users/jack/Desktop/jtl/result.jtl -e -o /Users/jack/Desktop/result 2.压测前修改master节点 jmeter remote_hosts = XXX.XX.XX.XX:XXXX, XXX.XX.XX.XX:XXXX XX就是slave的IP地址和端口号 修改server

Jmeter(五)性能压测

一.压力测试场景设置--windows环境 压力测试:一般压测时间10-15min,N个并发用户一直在请求.监控服务的cpu.内存等: 稳定性测试:一般压测一周,2天,1天等,看系统会不会崩掉,会不会内存泄露等. 一般我们在做压力测试的时候,分单场景和混合场景,单场景也就是咱们压测单个接口的时候,多场景也就是有业务流程的情况下,比如说一个购物流程,那么这样的场景就是混合场景,就是有多个接口一起来做操作. 1.单场景,一个请求就可以了  2.混合场景,多个请求 3.压测时间,一般场景都是运行10-

分布式压测系列之Jmeter4.0第一季

1)Jmeter4.0介绍 jmeter是个纯java编写的开源压测工具,apache旗下的开源软件,一开始是设计为web测试的软件,由于发展迅猛,现在可以压测许多协议比如:http.https.soap.ftp.database数据库.LDAP  轻量目录访问协议.TCP.SOMP(简单邮件协议)等,由于是纯java编写,可以在苹果.window或者Linux下运行,全功能的测试IDE,允许快速的建立测试计划(从浏览器或本地应用程序,官网地址:http://jmeter.apache.org)

DAY2-jmeter分布式压测,charls操作基础,python基础

jmeter 分布式压测 jmeter可以用来做分布式压测,需要做的是: 1. 在目标压力机上安装jmeter,并且在jmeter根目录下的bin目录下启动Jmeter-server 2. 在本地的jmeter的bin目录下找到jmeter properties文件,修改 remote hosts为目标压力机的host 3. 启动->远程启动 jmeter在linux上运行 由于现在大部分的server都为linux系统,在这种情况下,如果想要做jmeter压测: 1. 将准备好的脚本放到目标机