一:

由于Jmeter本身的瓶颈,当模拟数以千计的用户并发的时候,使用单台机器会有些力不从心,甚至还会引起Java内存溢出的错误,要解决这个问题,就要使用分布式测试,运行多台机器,也就是所谓的Agent来分担Jmeter自身的压力,并且借此来获得更大的并发用户数,

因此我们需要进行相关的修改和配置:

1,安装Jmeter,并且定其中一台机器为controller机器,其他的机器位Agent机器,然后运行所有的Agent机器的jmeter-server.bat文件,假如现在使用两台Agent机器:172.19.1.94,另一台是:172.19.1.10,(所有的Agent机器必须安装jdk)

2.在controller机器的目录bin目录下边编辑:jmeter.properties文件,把这里面的remote_hosts修改成为你的Agent的IP;这里如果controller也进行并发测试的话,也就直接把对应的IP加入进来就可以了;这里面的1099是端口号,可以不是1099,可以自己定的;

3.然后保存,

4.然后启动controller机器的jmeter.bat文件,然后在

这里就可以看到对应的Agent机器了;

5.然后运行全部就可以了;

6.有时候代理机器比较少,controller机器也要作为代理机器用来测试,这时候,就需要把controller机器的IP地址加入到刚刚修改的文件里面去;然后在按照上述步骤重新启动就可以了;每次我们需要先启动:jmeter-server.bat,然后在启动jmeter.bat文件;

二:

自己在使用时候踩过的坑:

agent机器不用配置东西,Apache4.0以后分布式要创建密钥:双击:create-rmi-keystore.bat,按照提示创建密钥----然后会生成一个密钥文件:rmi_keystore.jks;然后吧这个密钥文件拷贝到每个agent机器上,放到对应的bin目录下边,然后controller机器就可以控制对应的agent机器了;

jmeter 远程的时候,要打开服务,jmeter.server.bat,

jmeter.bat 打开
报Java错误的时候要加:环境变量;

最好jmeter的版本和,Java版本一致;

1,对于Agent机器上启动了jmeter-server.bat后会出现报错的现象:can not find ApacheJmeter_core.jar;

解决方法:

这个事开始的时候没有找到对应: ApacheJmeter_core.jar;或者如果不希望看到:can not find的字样,需要我们添加环境变量,变量为bin的上级目录,这样就不会看到can not find的字样了;

2.在jmeter分布是测试中,所有的Agent的线程数,等于在controller机器中线程组的配置;

第八篇:Jmeter的分布式测试的更多相关文章

  1. Jmeter之分布式测试/压测

    Jmeter做分布式测试的原因: 测试机器的配置低,对服务器进行压测时,造成不了压力. jmeter并发10000后,测试机就已经卡顿了,而且测试结果有大量失败(忽略了jmeter自身问题=.=||| ...

  2. jenkin系列_调度jmeter实现分布式测试

    假设现在有 192.168.1.100(jmeter 控制器 C ).192.168.1.101(jmeter负载机 B)两台机器进行分布式测试,各个步骤如下 1. C 和B 安装jmeter,并运行 ...

  3. Jmeter之分布式测试

    1)Jmeter 是纯java 应用,对于CPU和内存的消耗比较大,并且受到JVM的一些限制: 一般情况下,依据机器配置,单机的发压量为300-600,因此,当需要模拟数以千计的并发用户时,使用单台机 ...

  4. linux环境下使用jmeter进行分布式测试

    1.前言 熟练使用jmeter进行性能测试的工程师都知道,jmeter的客户端性能是有点差的.这会导致一个问题,其客户端的性能损耗会干扰到性能测试的结果,而且当线程数/并发大到一定程度时,客户端性能会 ...

  5. 解决jmeter进行分布式测试,远程机器来运行脚本,在察看结果树中的响应数据项为空白

    下面为大家提供一个解决办法: 第一步:打开主控机的jmeter--bin目录下的jmeter.properties文件 第二步:查找到mode=Standard 项 第三步:将其前边的注释去掉,然后保 ...

  6. jmeter(二十三)分布式测试

    jmeter用了一年多,也断断续续写了一些相关的博客,突然发现没有写过分布式测试的一些东西,这篇博客就介绍下利用jmeter做分布式测试的一些技术点吧,权当参考... 关于jmeter的介绍和元件作用 ...

  7. jmeter命令行运行-分布式测试

    上一篇文章我们说到了jmeter命令行运行但是是单节点下的, jmeter底层用java开发,耗内存.cpu,如果项目要求大并发去压测服务端的话,jmeter单节点难以完成大并发的请求,这时就需要对j ...

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

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

  9. 转:Jmeter分布式测试

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

随机推荐

  1. Java的I/O对文件的操作

    I/O操作主要是指使用Java进行输入,Java所有的I/O机制都是基于数据流进行输入输出,这些数据流表示了字符或者字节数据的流动序列. 主要是通过下面两个类实现对文件的输入输出操作: FileInp ...

  2. 使用include重用布局

    尽管Android 支持各种小部件,来提供小且可以重用的交互元素,你可能还需要更大的,要求一个专门布局的重用组件.为了高效的重用整个布局,你能使用和标签在当前的布局中嵌入别的布局. 重用布局功能特别强 ...

  3. leetcode1013

    class Solution(object): def canThreePartsEqualSum(self, A: 'List[int]') -> bool: n = len(A) sums ...

  4. Swoole 进程管理

    用法: $process = new swoole_process(function(){ //这里写业务代码 },true) //开启进程,返回进程pid $pid = $process->s ...

  5. 开发MIS系统的相关技术

    Java Web应用的核心技术包括以下几个方面:● JSP:进行输入和输出的基本手段.● JavaBean:完成功能的处理.● Servlet:对应用的流程进行控制.● JDBC:是与数据库进行交互不 ...

  6. APP-3-百度地图应用

    1.百度地图开发平台 http://lbsyun.baidu.com/ 1.1申请账号 1.2Android创建应用 进入百度地图开发平台->控制台->创建应用 发布版SHA1:BA:AD ...

  7. mac下shell给文件名批量加前缀

    用rename命令 如果没装的话执行下面这个命令安装rename brew install rename rename 's/^/logo_/' *.png

  8. 使用ubuntu远程连接windows, Connect to a Windows PC from Ubuntu via Remote Desktop Connection

    from: https://www.digitalcitizen.life/connecting-windows-remote-desktop-ubuntu NOTE: This tutorial w ...

  9. Cookie安全小结

    Cookie机制:一般来说,同域内浏览器中发出的任何一个请求都会带上Cookie,无论请求什么资源,请求时,Cookie出现在请求头的Cookie字段中.服务端响应头的Set-Cookie字段可以添加 ...

  10. C++17尝鲜:变长 using 声明

    using 声明 先来看 using 声明在类中的应用: 代码1 #include <iostream> using namespace std; struct A { void f(in ...