Jmeter运行时十分耗CPU和内存,在实际应用中有时一台机器不能满足测试要求,这时就需要利用多台机器来进行分布式。
 
Jmeter分布式的测试框架:框架中所有的测试脚本都要从测试主机传送到测试从机,而测试结果又要从测试从机传送回测试主机。
测试主机收集所有从机的测试结果并显示出来,如果虚拟用户的数量大的话,这个过程需要传输的数据很多,对测试主机有很高的求。
(图片转自博客http://blog.chinaunix.net/uid-26884465-id-3419474.html)
 
在进行分布式前需要确认的问题:
1.所有主从机器都在同一个子网内,能够访问
2.所有防火墙都关闭了
3.所有机器上的Jmeter都是同一个版本的,JDK是同一个版本的。
 
上面的确认没有问题了,就可以进行分布式测试了。分布式采用master-slave,即一台机器做主机controller,其他机器做从机agent。
假设用192.168.201.246做主机,192.168.201.247和192.168.201.248做从机
 
1.主从机器上都安装Jmeter和JDK。配置好Jmeter和JDK的环境变量
如果从机的JAVA环境变量没有配置,需要编辑jmeter-server.bat文件,编辑REM START rmiregistry %SERVER_PORT%,将其改为
REM START %JAVA_HOME%/jre7/bin/rmiregistry %SERVER_PORT%
 
2.在主机下配置jmeter.properties的remote_hosts
编辑jmeter.properties文件,将remote_hosts=127.0.0.1
修改为:
remote_hosts=192.168.201.247:1099,192.168.201.248:1099
(如果想要将主机也做为从机去运行脚本,只需要在remote_hosts=后增加127.0.0.1:1099即可)
 
注意:端口号1099是做为jmeter的controller和agent之间进行通信的默认RMI端口号。
确定端口是否被占用的命令:
netstat -ano|findstr "1099"
tasklist|findstr "1099"
 
3.在所有从机上放一份参数化的文件,否则分布式不会成功
 
4.启动所有从机的jmeter-server.bat(如果主机也作为分布式slave,也需要启动主机上的jmeter-server.bat)
注意:这步一定要做,否则远程启动的时候会报错
 
5.在主机上打开jmeter.bat,打开已经调试好的测试脚本,选择远程启动即可成功。
远程启动分为两种:
1.可以单独启动某一台从机,通过运行->远程启动->XXX
2.全部启动,运行->远程全部启动。菜单上也有远程全部启动的按钮
 
 
推荐博客:http://www.cnblogs.com/yangxia-test/p/4016277.html     

Jmeter分布式的更多相关文章

  1. jmeter分布式操作-远程启动功能探索

    一.背景: 之前在Jmeter插件监控服务器性能一篇中说到,在非GUI环境中监控时为了保存监控数据需要修改jmeter脚本,并且每次通过施压机(远程服务器,非GUI环境)来压测时都要将jmeter脚本 ...

  2. 【Fine原创】JMeter分布式测试中踩过的那些坑

    最近因为项目需要,研究了性能测试的相关内容,并且最终选用了jmeter这一轻量级开源工具.因为一直使用jmeter的GUI模式进行脚本设计,到测试执行阶段工具本身对资源的过量消耗给性能测试带来了瓶颈, ...

  3. jmeter分布式测试远程连接失败

    jmeter分布式部署其实很简单.但今天测试的时候发现了一个坑,远程连接一直失败. 原因:服务器上部署了slave,而这台服务器上有多个网卡.举个例子:ip分别为:192.168.100.6,10.1 ...

  4. Jmeter分布式部署

    当单机没有足够能力来模拟较重的负载,可以使用jmeter分布式测试功能, 通过一个Jmeter控制台来远程控制多个Jmeter引擎完成测试. 每个线程均独立运行测试计划.因此,线程组常用来模拟并发用户 ...

  5. jmeter分布式测试教程和远程的代理机无法连接网络的问题解决方法

    一.Jmeter分布式执行原理: 1.Jmeter分布式测试时,选择其中一台作为控制机(Controller),其它机器做为代理机(Agent). 2.执行时,Controller会把脚本发送到每台A ...

  6. jmeter 分布式压测(windows)

    单台压测机通常会遇到客户端瓶颈,受制于客户机的性能.可能由于网络带宽,CPU,内存的限制不能给到服务器足够的压力,这个时候你就需要用到分布式方案来解决客户机的瓶颈,压测的结果也会更加接近于真实情况. ...

  7. 转:Jmeter分布式测试

    在使用Jmeter进行性能测试时,如果并发数比较大(比如最近项目需要支持1000并发),单台电脑的配置(CPU和内存)可能无法支持,这时可以使用Jmeter提供的分布式测试的功能. 一.Jmeter分 ...

  8. Jmeter分布式部署测试-----远程连接多台电脑做压力性能测试

    在使用Jmeter进行接口的性能测试时,由于Jmeter 是JAVA应用,对于CPU和内存的消耗比较大,所以,当需要模拟数以万计的并发用户时,使用单台机器模拟所有的并发用户就有些力不从心,甚至会引起J ...

  9. Windows和Linux的Jmeter分布式集群压力测试

    Windows的Jmeter分布式集群压力测试 原文:https://blog.csdn.net/cyjs1988/article/details/80267475 在使用Jmeter进行性能测试时, ...

  10. Jmeter分布式及在Linux上执行jmeter脚本

    Jmeter分布式 主控机即自己的电脑,控制并发数 压力机即别人的机器,和主控机一起添加压力 1.其他的压力机需要启动Jmeter-server.bat 启动成功页面 2.主控机的Jmeter 的bi ...

随机推荐

  1. 多线程执行顺序诡异现象谈,你不知道的pthread_create

    引文:学而时习之,不亦说乎.总是忙于具体项目,业务功能的实现:关于编程本身的技能都要有些生疏了,于是就选择了几个专题做了一次温习,重点放在了多线程和多进程上,跑了一个实例,居然有新的发现: (1)多个 ...

  2. C/C++基础----泛型算法

    算法不依赖与容器(使用迭代器),但大多数依赖于元素类型.如find需要==运算符,其他算法可能要求支持<运算符. 算法永远不会执行容器的操作,永远不会改变底层容器的大小(添加或删除元素). ac ...

  3. bzoj 3768: spoj 4660 Binary palindrome二进制回文串

    Description 给定k个长度不超过L的01串,求有多少长度为n的01串S满足: 1.该串是回文串 2.该串不存在两个不重叠的子串,在给定的k个串中. 即不存在a<=b<c<= ...

  4. C# winfrom ComboBox 调整下拉菜单的高度

    1.设置属性 // 1.属性设置 DrawMode ->OwnerDrawVariable this.cboBoxPostID.DrawMode = System.Windows.Forms.D ...

  5. [UE4]创建对象的的几种姿势(C++)

    DEMO源代码 这个DEMO演示了在C++代码中,创建UE4的常见类型的对象,包括Actor,ActorComponent,加载资源等. 源代码请从这里下载:https://code.csdn.net ...

  6. 【转载】Docker 经验之谈

    本文来源:Ghostcloud原创     对于用户来说,可能一开始在不了解的情况下会对容器报以拒绝的态度,但是在尝到容器的甜头.体验到它的强大性能之后,相信大家最终是无法抵挡其魅力的.容器技术能够解 ...

  7. jQuery 的noConflict()的使用.

    我们项目现在需要用到两个js库.一个是jQuery库,还有一个是我们自己开发的轻量级的gys.js库. 而gys库对外提供的接口也是$符号.和jQuery库是一样的,这个时候,两个库就会发生冲突了,我 ...

  8. php 数组随机取值

    array_rand()在你想从数组中取出一个或多个随机的单元时相当有用.它接受 input 作为输入数组和一个可选的参数 num_req,指明了你想取出多少个单元 - 如果没有指定,默认为 1. a ...

  9. Trace VM

    24小时稳定性压测Trace 高并发情况下主要观察VM运行情况 一.总体概览 如上图所示 持久代十分稳定,没有发生OOM 二.VM区域详情 上图为VM每个区间的具体情况 1.持久代始终占分配空间的四分 ...

  10. sql 随机取数

    Sql server:      select top 10 * from 表 order by newid()Access:      SELECT top 10 * FROM 表 ORDER BY ...