zoukankan      html  css  js  c++  java
  • Jmeter分布式

    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     
  • 相关阅读:
    Url中文传值乱码、编码转码问题总结
    简单介绍下我使用了一年多还不知道的Sql server 2005 组件知识
    一次管理项目小组网络的经历(使用RouterOS与Wireshark破解adsl上网密码,使用isa与Bandwidth Splitter来协调带宽)
    asp.net异步处理机制研究
    注释的力量
    AutoMapper简明教程(学习笔记)
    seajs学习笔记
    Hifi入门
    fxcop使用DataFlowRules规则集
    Visual Studio编译选项简介
  • 原文地址:https://www.cnblogs.com/meitian/p/4575124.html
Copyright © 2011-2022 走看看