jmeter分布式压测

2023-11-19

1.什么是分布式压测?

由一台控制机(Master )发出命令,控制多个压力机(Slaves)执行操作。

2、为什么要做分布式压测?

  • 一台压力机的 Jmeter 默认最大支持 1000 左右的并发用户数(线程数),再大的话,容易造成卡顿、无响应等情况,这是受限于Jmeter 其本身的机制和硬件配置(内存、CPU等)
  • 由于 Jmeter 是 Java 应用,对 CPU 和内存的消耗较大,在需要模拟大量并发用户数时,单机很容易出现 JAVA内存溢出的错误,导致测试脚本本身就有瓶颈

3、实操

1、控制机和压力机的前提条件:

  • jmeter 版本要一致
  • jdk 主版本要一致(1.7、1.8…)
  • jmeter 脚本中,csv 文件要一致
  • jmeter 的插件要一致
  • 同一局域网,防火墙开放端口

2、压力机操作步骤(以linux系统为例)

1. 编辑jmeter.properties文件
  • 修改 server_port 端口默认为1009
# RMI port to be used by the server (must start rmiregistry with same port)
server_port=1234
  • 修改 server.rmi.port 端口,和 server_port 保持一致即可, 默认是会帮你保持一致的
# To change the default port (1099) used to access the server:
server.rmi.port=1234
  • 设置 server.rmi.ssl.disable,默认 false,代表需要认证设置为 true,减少不必要的麻烦
# Set this if you don't want to use SSL for RMI
server.rmi.ssl.disable=true
2. 启动 jmeter-server 服务
./jmeter-server -Djava.rmi.server.hostname=压力机ip

3、控制机操作步骤

1. 编辑jmeter.properties文件
  • 修改 remote_hosts,多个压力机以逗号分隔,如果控制机也测试则加 127.0.0.1:port ,然后修改
    server_port 和 server.rmi.port (和压力机一样步骤)
remote_hosts=192.168.220.129:1234,127.0.0.1:1234
#remote_hosts=localhost:1099,localhost:2010

# RMI port to be used by the server (must start rmiregistry with same port)
server_port=1234

# To change the default port (1099) used to access the server:
server.rmi.port=1234
  • 设置 server.rmi.ssl.disable
# Set this if you don't want to use SSL for RMI
server.rmi.ssl.disable=true
  • 设置 mode,用于查看分布式测试过程中,每个压力机的测试结果。不启用,在运行过程中,控制器是无法实时看到压力机的结果
mode=Standard
2. 控制机运行分布式测试

在这里插入图片描述

jmeter -n -t 分布式测试计划.jmx -l C:\Users\one_day_i_will\Desktop\test\分布式测试计划.jtl -e -o C:\Users\one_day_i_will\Desktop\test\report -R 127.0.0.1,192.168.220.129
`

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

jmeter分布式压测 的相关文章

  • 开眼了,自动化测试还能这样用?

    2024软件测试面试刷题 这个小程序 永久刷题 靠它快速找到工作了 刷题APP的天花板 CSDN博客 文章浏览阅读2 3k次 点赞85次 收藏11次 你知不知道有这么一个软件测试面试的刷题小程序 里面包含了面试常问的软件测试基础题 web自
  • 程序员找工作难!拿到外包公司的 offer 我应该去么?

    引言 前一阵子有一个帖子引起了非常广泛的讨论 描述的就是一个公司的外包工作人员 加班的时候因为吃了公司给员工准备的零食 被公司的HR当场批评 这个帖子一发出来 让现在测试行业日益新增的外包公司备受关注 那么外包公司和非外包公司有什么样的不一
  • JMeter 3.2 中不存在 SOAP/XML-RPC Sampler

    我有点惊讶我的 JMeter 3 1 脚本在 3 2 中不起作用 JMeter 3 2 中删除 SOAP XML RPC Sampler 的原因是什么 是否存在一些性能问题等 这是 JMeter 的一部分change http jmeter
  • JMeter 将变量设置为随机选项

    我一直在使用 JMeter 我知道 Random and RandomString功能 我需要选择一个随机选项并将其存储在变量中 因为它将用作多个调用的参数路径的一部分 例如 http www example com pets random
  • 循环访问多个正则表达式提取器输出

    您能告诉我如何循环遍历返回多个值的正则表达式后处理器的结果吗 Example JSON 响应消息 reply code 111 status SUCCESS customerID 222 a b 333 44 4 s 555 666 777
  • 使用 XPATH 子字符串函数

    我需要帮助弄清楚这个 XPATH 子字符串函数 但我无法使用它 我尝试过这种方法的各种变体 a contains text Home href substring jsessionid 12 尝试从此标签获取 jsessionid 值 a
  • Java 12 JMeter 5 HTTP/2 请求 java.lang.NoClassDefFoundError: org/eclipse/jetty/alpn/client/ALPNClientConnectionFactory

    我在 Ubuntu 9 0 4 上使用 Java 12 JMeter 5 1 1 并在尝试发送 HTTP 2 请求时遇到以下异常 Response code Non HTTP response code java util concurre
  • 使用extentreports获取jmeter测试结果

    对于任何使用 jmeter 进行 api 功能测试的人来说 报告并不是那么好 有没有人用过类似的东西http extentreports com http extentreports com 显示他们的测试结果 关于更好地显示测试结果的其他
  • JMeter:为单个用户触发多个并发 HTTP 请求

    我有一个带有线程组和 Cookie 管理器的 JMeter 负载测试脚本 线程组中的用户首先使用HTTP采样器登录来获取cookie 然后 循环控制器触发交错采样器 该采样器在几个向服务器发出查询的 HTTP 采样器之间交替 现在 我希望交
  • Jmeter - 如何向计数器添加前缀。类似于随机变量

    目前 在随机变量中 我可以在变量的输出格式中添加前缀或后缀 然而 这个很好的功能不适用于简单的计数器控制器 每次使用变量时连接 string counter 对我来说并不是一个好的选择 因为我经常这样做 有没有办法以随机变量的方式实现前缀
  • 增加 JMeter 执行期间的线程数

    我有一个性能测试JMeter并想用它来测试最大系统性能 吞吐量 因此 当错误率低于 2 时 应增加活动线程数 我发现Constant Throughput Timer 把它放入Thread Group但它只会暂停或减慢线程 我尝试将其定义如
  • 每个线程组的概率

    如果我的测试计划中有 3 个线程组 如何为每个组设置恒定概率 请求权重 我是 JMeter 的新手 您能在屏幕截图上显示您的设置吗 只需将每组的线程数设置为测试总线程数的一个因子即可 如果有 100 个 VU 则 g1 设置为 50 g2
  • JMeter 在性能测试期间挂起

    我试图模拟 4 个不同用户的 100 个线程请求 所有 97 个请求均已发送和接收 但其余 3 个请求仍显示为正在执行 我必须手动停止 Jmeter 然后只传递剩余的请求 为什么会发生这种情况 您的计算机可能没有资源来执行请求 或者 Jav
  • 如何通过java编码生成Jmeter仪表板报告。 (不是 Windows 或 shell 命令)

    我必须通过java编码生成Jmeter仪表板报告 在java代码下面 我用来生成正常的jmeter报告 我必须生成一个 通过java的仪表板报告 public class JMeterFromExistingJMX public stati
  • 如何使用 JMeter 将 application/x-www-form-urlencoded 参数发送到 RestServer?

    我开发了一个休息服务器 并将其在本地主机中运行 我尝试使用 JMeter 执行测试 发送请求帖子和获取 取决于调用的方法 我已经发送到 Rest 服务器并使用 JMeter 在简单的 post 请求 获取请求 通过 post 发送文件以及通
  • setEndTime 必须在 setStartTime 之后调用

    尝试使用 JMeter JMS Publisher 推送消息 但低于错误 这是jmeter端错误还是服务器端错误 Error setEndTime must be called after setStartTime java lang Th
  • JMeter 中的周期性后台任务

    我的测试计划中的请求使用授权令牌 我知道该令牌将在 1 小时内过期 我需要以某种方式每 59 分钟重新请求一次令牌 直到测试完成 有人可以建议最好的方法吗 看起来使用 While 控制器测试将永远不会完成并停留在永恒的 while 循环中
  • jmeter恒定视频流

    我正在使用 Jmeter 来加载测试视频流 我可以传递登录信息 但我需要让 Jmeter 在提供视频流的页面上 保持 我怎样才能做到这一点 我已经设置了 cookie 管理器 如果视频流不在您的服务器上 您根本不需要测试它 例如 如果您的网
  • 如何在真实情况下模拟Web应用程序的120个并发用户?

    你如何模拟 gt 120 个并发用户使用负载测试框架 例如 JMeter 据我了解 如果我使用 120 台服务器或 120 个 CPU 核心 则真正的并发是可能的 您如何在真实条件下测试您的网络应用程序或服务 我发现 JMeter 工作得很
  • Jmeter 下降的最佳方法?

    我们都知道 Jmeter 并不是最擅长在运行期间更改活动线程的数量 除非您喜欢并创建以不同时间间隔触发的单独线程组 有没有人想出一个好的解决方案来在测试结束时降低速度 例如 我从 50 个线程开始 在 30 分钟内我想要 0 个活动线程 查

随机推荐

  • EF循环依赖

    1 项目场景 项目场景 1 本项目采用了EF架构来建立实体与实体之间的关联关系 2 一个部门对应多个摄像头 1 部门实体 public partial class DepartmentEntity 部门实体 public int Id ge
  • Netty中的零拷贝机制

    零拷贝机制 Zero Copy 是在操作数据时不需要将数据从一块内存区域复制到另一块内存区域的技术 这样就避免了内存的拷贝 使得可以提高CPU的 零拷贝机制是一种操作数据的优化方案 通过避免数据在内存中拷贝达到的提高CPU性能的方案 1 操
  • C++ 中的虚函数及虚函数表

    C 中的虚函数及虚函数表 一 虚函数及虚函数表的定义 二 虚函数表指针和虚函数表的创建时机 三 虚函数实现多态的原理 一 虚函数及虚函数表的定义 虚函数 虚函数就是在基类中定义一个未实现的函数名 使用虚函数的核心目的就是通过基类访问派生类定
  • MyBatis写入Json字段及Json字段转对象

    阅读本文章大概需要一分钟 一 背景 最近在设计表结构的时候 根据需求 将一个字段的类型设计为Json字段 而对于还没有操作过数据库Json字段的我就有点懵了 之前从未遇到这种情况 所以也是一步步研究一步步踩坑 最后终于是把Json字段读取的
  • 【css】overflow溢出隐藏

    overflow scroll 溢出部分显示滚动条 不溢出也显示滚动条 overflow auto 溢出的时候才显示滚动条 不溢出不显示滚动条
  • 二:云函数细则说明及部署流程

    目录 细则说明 代码结构 初始化及生成数据库管理工具 导出回调 完整示例 部署流程 本地云函数 云端云函数 细则说明 代码结构 通常一个云函数中 往往有着这样的代码结构 环境初始化 const cloud require wx server
  • C#软件开发实例.私人订制自己的屏幕截图工具(一)功能概览

    本实例全部文章目录 一 功能概览 二 创建项目 注册热键 显示截图主窗口 三 托盘图标及菜单的实现 四 基本截图功能实现 五 针对拖拽时闪烁卡顿现象的优化 六 添加配置管理功能 七 添加放大镜的功能 八 添加键盘操作截图的功能 九 使用自定
  • 在区块链世界中的token到底是什么?

    token的概念很广泛 在计算机领域中 无论是基础的网络架构还是服务系统的身份验证等 都有涉及到token的概念 然而在这里我想阐述的是在区块链世界中的token是什么 相信对区块链有些了解的朋友 都或多或少的听过或者看过关于token的描
  • C++——oo的魅力之多态

    文章目录 多态的概念 多态的定义和实现 多态的构成条件 虚函数重写的两个例外 协变 基类和派生类虚函数返回值类型不同 析构函数的重写 基类和派生类析构函数名字不同 c 11 override 和 final 关键字 重载 重写 覆盖 隐藏
  • 全国大学生信息安全竞赛真题(CTF)

    web篇 https blog csdn net csu vc article details 78011716 https www cnblogs com iamstudy articles 2017 quanguo ctf web wr
  • 查看Python之禅,使用的命令以及初级学习的简单那注意事项

    cmd终端进入Python的执行终端 输入import this就可以查看到Python代码编写的原则
  • 《学习篇》学会这18个常用ROS命令集合就能入门ROS了

    常用ROS命令概述 ROS常用命令可以按照其使用场景分为ROSshell命令 ROS执行命令 ROS信息命令 ROS catkin命令与ROS功能包命令 虽然很难从一开始就很熟练地使用所有的命令 但是随着使用的次数增多 你会发现常用的几个R
  • rabbitmq queue_declare arguments参数注释

    说明 官方文档 在创建queue时可以指定很多参数 可以限制队列的大小 消息的死信时间 优先级等等 queue消息条数限制 x max length 该参数是非负整数值 官方文档 限制加入queue中消息的条数 先进先出原则 超过10条后面
  • JavaScript重写Symbol(Symbol.iterator)实现迭代器(1)

    iterator迭代 做的跟java集合迭代差不多就行了 示例图 h1 对象遍历重写iterator接口1 h1
  • HTML5无刷新修改URL:利用 History API 无刷新更改地址栏

    为什么80 的码农都做不了架构师 gt gt gt HTML5 新增的历史记录 API 可以实现无刷新更改地址栏链接 配合 AJAX 可以做到无刷新跳转 简单来说 假设当前页面为renfei org 那么执行下面的 JavaScript 语
  • 前端权限控制(一):前端权限管理及动态路由配置方案

    权限控制 在项目中 尤其是在后台管理系统中 不同人员登陆 看到的页面菜单是不一样的 比如 一个公司的办公系统 超级管理员登陆可以看到所有的页面 而普通员工账号登录可能无法看到人员管理等页面 比如公司的员工个人资料页面只有人力资源部门有权利看
  • 软件测试面试题:软件测试的风险主要体现在哪里?

    软件测试的风险主要体现在哪里 我们没有对软件进行完全测试 实际就是选择了风险 因为缺陷极有可能存在没有进行测试的部分 举个例子 程序员为了方便 在调试程序时会弹出一些提示信息框 而这些提示只在某种条件下会弹出 碰巧程序发布前这些代码中的一些
  • 【MySQL】MySQL存储过程从一张表查数据插入另一张表

    测试表 CREATE TABLE demo test ID varchar 64 NOT NULL name varchar 64 DEFAULT NULL age varchar 64 DEFAULT NULL PRIMARY KEY I
  • 四种常见函数式接口

    消费型函数式接口 Consumer
  • jmeter分布式压测

    1 什么是分布式压测 由一台控制机 Master 发出命令 控制多个压力机 Slaves 执行操作 2 为什么要做分布式压测 一台压力机的 Jmeter 默认最大支持 1000 左右的并发用户数 线程数 再大的话 容易造成卡顿 无响应等情况