一:

由于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. SAPCertifiedTechnologyAssociate-SystemAdministration(SAPHANAasaDatabase)

    C_TADM55_75 SAP Certified Technology Associate - System Administration (SAP HANA as a Database) with ...

  2. 《算法》第三章部分程序 part 5

    ▶ 书中第三章部分程序,加上自己补充的代码,包含公共符号表.集合类型 ● 公共符号表,用于普通查找表的基本类 package package01; import java.util.NoSuchEle ...

  3. python中str的索引、切片

    1 a = "hello" 2 a1 = a[1] 3 a2 = a[0:2] 4 print(a1) 5 print(a2) 我们通过索引获取字符串中指定位数的字符 通过切片获取 ...

  4. Apache- DBUtils框架学习

    一.DBUtils DBUtils 的介绍 commons-dbutils 是 Apache 组织提供的一个开源 JDBC工具类库,它是对JDBC的简单封装,,DBUtils封装了对JDBC的操作,简 ...

  5. Node 操作 MySQL 数据库

    1, 下载 mysql 依赖 => npm -i mysql 2, 写一个核心工具类, 用于获取线程池连接 mysql-util.js // 引入 mysql 数据库连接依赖 const mys ...

  6. JS获取QueryString(Jquery)

    QueryString = {      data: {},      Initial: function() {          var aPairs, aTmp;          var qu ...

  7. 16.linux常用查看命令

    cat :查看整个文件tail -200f  abc.txt  :查看abc.txt的最后200行

  8. java用Thread方式创建多线程

    进程:一个正在执行的程序,每一个进程都有一个执行顺序,该顺序是一个执行路径,或者叫一个控制单元.线程:进程中一个独立的控制单元.线程控制着进程的执行.一个进程中至少有一个线程. java VM中至少有 ...

  9. leetcode997

    class Solution: def findJudge(self, N: int, trust: 'List[List[int]]') -> int: if N==1 and len(tru ...

  10. leetcode984

    public class Solution { private string M1(int A, int B) { StringBuilder sb = new StringBuilder(); ; ...