Jmeter性能测试: Jmeter 5.6.3 分布式部署

本文详细描述了使用JMeter进行主从压测的步骤,包括环境配置、master和slave的设置,以及遇到的乱码问题解决方案。此外,还解释了TestPlan的作用、线程组的执行顺序和JMeter组件的执行流程。
摘要由CSDN通过智能技术生成

目录

  一、实验

1.环境

2.jmeter 配置 slave 代理压测机

3.jmeter配置master控制器压测机

4.启动slave从节点检查

5.启动master主节点检查

6.运行jmeter

7.观察jmeter-server主从节点变化

二、问题

1.jmeter 中间请求和响应乱码


  一、实验

1.环境

(1)主机

表1-1 主机

主机架构IP版本备注
controller Jmeter master 节点192.168.204.70 5.6.3
slave1Jmeter slave 节点192.168.204.715.6.3

(2)查看版本

master节点

jmeter -v

java --version

slave节点

jmeter -v

java --version

2.jmeter 配置 slave 代理压测机

(1)修改配置

 slave 机器上需要修改配置 jmeter.properties,修改以下两处配置:
 1)找到 server_port 去掉 #,设置端口
 2) 找到 remote_hosts 去掉 #,添加master的 ip及端口 配进去 
 3) 找到server.rmi.ssl.disable=false 改成 true
vim jmeter.properties 

修改前:

修改后:

3.jmeter配置master控制器压测机

(1)修改配置文件

 slave 机器上需要修改配置 jmeter.properties,修改以下两处配置:
 1)找到 remote_hosts 去掉 #,添加本地与slave的 ip及端口 配进去
 2、找到server.rmi.ssl.disable=false 改成 true
vim jmeter.properties 

修改前:

修改后:

4.启动slave从节点检查

(1)启动

注:先启动从机器检查是否连接成功
进入jmeter/bin目录,启动jmeter-server
[root@slave1 bin]# jmeter-server

5.启动master主节点检查

(1)启动

注:先启动从机器检查是否连接成功,然后再启动主机器进行检查
进入jmeter/bin目录,启动jmeter-server
[root@controller bin]# jmeter-server

6.运行jmeter

(1) 主节点打开jmeter

[root@controller ~]# jmeter

(2) 添加线程组、取样器与监听器

线程数为1

(3)查看

(4)远程启动所有

(5)查看监听器结果

查看结果树

 用表格查看结果

查看聚合报告

聚合报告中间的样本数量=线程数*循环次数*agent(机器台数)

聚合报告中间的样本数量=1*1*2=2


 

(6)清空

(7)修改线程数为1000

 (8)再次远程启动所有

(9)查看监听器结果

查看结果树

用表格查看结果

查看聚合报告

聚合报告中间的样本数量=线程数*循环次数*agent(机器台数)

聚合报告中间的样本数量=1000*1*2=2000

7.观察jmeter-server主从节点变化

(1)master节点

过程涉及2次Starting和Finished

(2)slave节点

过程涉及2次Starting和Finished

二、问题

1.jmeter 中间请求和响应乱码

(1)解决方法

需修改jmeter.properties 文件中间sampleresult.default.encoding=utf-8,language=zh_CN 修改保存之后要求重启jmeter

修改前:

修改后:

3.Test Plan (测试计划) 有何作用

(1)作用

测试计划是JMETER所有组件的起点,所有的组件都是基于测试计划:
1)名称
整个测试计划名称,以实际项目名称

2)注释
方便查看自定义内容

3)用户定义变量
配置元件中间定义变量,测试计划中间的变量属于全局变量,对所有的线程组都有效(不建议通过测试计划定义用户变量,因为测试计划没法进行禁用的操作,通过配置元件进行自定义变量)

4)独立运行每个线程组

4.线程组的执行顺序

(1)顺序

1)setup 线程组
setup 线程组是用于前期的准备工作,比如:JDBC 数据库操作时,前期需要建立数据库连接,用户登录,用户登录完成之后需要做其他的操作,所以 需要把登录放在setup 线程组中间

2)线程组
给服务器做并发的时候需要用到的是并发的用户数,UV一个线程组可以理解为一个用户。
一个线程组可以看做一个虚拟用户组,线程组中的每个线程都可以理解为一个虚拟用户。多个用户同时去执行相同的一批次任务。每个线程之间都是隔离的,互不影响的。

3)teardown线程组
所有的线程组执行完成之后再执行该线程组,比如:退出登录,jdbc 数据库操作完成之后,需要关闭数据库的连接

5.Jmeter组件执行顺序

(1)顺序

1)配置元件

2)前置处理器

3)定时器

4)取样器

5)后置处理器

6)断言

7)监听器

  • 8
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值