Jmeter 分布式测试

Jmeter 分布式测试
背景:
由于Jmeter本身的瓶颈,当需要模拟数以万计的并发用户数时,使用单台机器模拟所有的并发用户有些力不从心,甚至还会引起Java内存溢出的错误。要解决这个问题,可以使用分布式测试,运行多台机器运行Agent来分担Jmeter自身的压力,并借此来获取更大的并发用户数,但是需要进行一些相关的配置。

操作步骤:
1、安装Jmeter,并确定其中一台机器作为Controller,其它机器作为Agent。然后运行所有Agent机器上的jmeter-server.bat文件(假设我们使用两台机器192.168.1.11和192.168.1.12作为agent,agent机器上必须安装jdk,并设置环境变量)
2、在controller机器上jmeter安装目录/bin/目录编辑jmeter.properties文件 remote_hosts=127.0.0.1 其中127.0.0.1表示运行jmeter agent的机器,这里需要修改为
remote_hosts=192.168.1.11:1099,192.168.1.12:1099 --其中1099为端口号
3、启动controller机器上的jmeter.bat(即启动主机上的jmeter),在主界面点击菜单"运行-选择远程启动(选择每个远程agent来启动)&或选择远程全部启动"--来运行远程的agent
4、有时需要将本地的controller也作为agent,则同样需要修改/bin/目录编辑jmeter.properties文件 remote_hosts=192.168.1.11:1099,192.168.1.12:1099,Controller_IP即
remote_hosts=192.168.1.11:1099,192.168.1.12:1099,127.0.0.1 同时,需要先启动本地Controller机器上/bin/目录jmeter-server.bat,然后再启动本地的jmeter.bat

常见问题:
1、确定controller机器上安装jdk版本和jmeter一致
2、agent机器启动jmeter-server.bat时,后台提示:could not find ApacheJmeter_core.jar
   这个是开始没有找到ApacheJmeter_core.jar,如果不希望看到could not find ApacheJmeter_core.jar,需要添加环境变量JMETER_HOME,路径为bin目录的上一级目录,这样启动
   jmeter-server.bat时就不会看到此错误
3、Jmeter分布式控制过程中,各个Agent启动的线程数之和等于线程组中的配置

你可能感兴趣的:(Jmeter 分布式测试)