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

1.安装 JMeter,并确定其中一台机器作为 Controller,其他的机器作为 Agent。然后运行所有 Agent 机器上的JMeter-server.bat文件——假定我们使用两台机器 192.168.0.11 和 192.168.0.12 作为 Agent; (Agent机器上必须安装jdk,并设置环境变量)

2.在Controller 机器的 %JMeter_home%/bin下,编辑 JMeter.properties 中“remote_hosts=127.0.0.1”。其中的 127.0.0.1 表示运行 JMeter Agent 的机器,这里需要修改为

“remote_hosts=192.168.0.11:1099,192.168.0.12:1099”——其中的 1099为端口号。

3.启动controller机器上的jmeter.bat,选择菜单Run中“Remote Start”中的192.168.0.11:10099和192.168.0.12:1099来运行Agent。

4. 有时代理的机器太少,仍不能满足需要,则需要将作为Controller的电脑也当作Agent,则同样需要修改JMeter.properties文件,将Controller的IP地址写入。这时,需要打先打开Controller电脑中JMeter下bin目录下的jmeter-server.bat,然后再打开JMeter.bat,此时,进入Run -> Remote Start菜单,可以看到Controller也作为远程机器进行运行。

当远程访问时,会看到控制台上打印出一行:Starting the test on host [ip]:1099 @....,远程执行结束,会打印一行:Finished the test on host [ip]:1099 @...。

常见问题:

1、确定在controller机器上安装jdk,版本和jmeter一致,配置环境变量:Java_home等

在Agent机器上安装jdk,配置环境变量:Java_home和JMeter_home 2、Agent机器启动Jmeter_server.bat时,后台提示:"could not find ApacheJmeter_core.jar"

解决方法:这个是开始没有找到ApacheJmeter_core.jar,后来去JMETER_HOME目录下去查找,最后找到了,如果不希望看到Could not find的字样,需要添加环境变量JMETER_HOME,路径为bin目录的上一级目录,这样启动jmeter-server服务时,就只会看到Found ApacheJMeter_core.jar。 3、Jmeter分布式控制过程中,各个Agent启动的线程数等于线程组中的配置,

不是均分线程组中的配置

4. Jmeter安装目录不要放在例如:C:/Program Files/**,因为jmeter-server.bat不支持含空格的文件夹路径。

最新文章

  1. Android中基于CGroup的memory子系统HAL层分析-lmkd
  2. 背水一战 Windows 10 (17) - 动画: ThemeTransition(过渡效果)
  3. Sharepoint学习笔记—习题系列--70-576习题解析 -(Q88-Q91)
  4. POJ3494Largest Submatrix of All 1’s[单调栈]
  5. Python.Scrapy.12-scrapy-source-code-analysis-part-2
  6. Java Socket(1): 入门
  7. 利用red5搭建一个简单的流媒体直播系统
  8. ArcGIS学习推荐基础教程摘录
  9. Spark算子--map和flatMap
  10. Crontab 执行时没有环境变量!
  11. Linux 中数组的使用
  12. NOIp2018爆零记
  13. PythonStudy——字典的操作 Dictionary operation
  14. vuex、redux、mobx 对比
  15. [Openwrt 项目开发笔记]:Samba服务&vsFTP服务(四)
  16. 这可能是AI、机器学习和大数据领域覆盖最全的一份速查表
  17. elasticsearch5.2.1使用logstash同步mysql
  18. java中的null和""区别------&&与&的区别
  19. onbeforeunload 适用DOM 0级,不适用 DOM 2级
  20. python中使用空格还是使用 Tab键缩进的建议

热门文章

  1. pikachu练习平台(XSS-漏洞测试案例(cookie的窃取和利用、钓鱼攻击、XSS获取键盘记录))
  2. 第二十三篇 玩转数据结构——栈(Stack)
  3. 链剖-进阶ing-填坑-NOIP2013-货车运输
  4. Bugku-CTF加密篇之python(N1CTF) [HRlgC2ReHW1/WRk2DikfNBo1dl1XZBJrRR9qECMNOjNHDktBJSxcI1hZIz07YjVx]
  5. go使用错误概览
  6. Codeforces Round #608 (Div. 2)D(贪心)
  7. 2017年陕西省网络空间安全技术大赛——一维码——Writeup
  8. CSS3的一个伪类选择器:nth-child()
  9. quernation,euler,rotationmatrix之间的相互转换
  10. List 线性表:ArrayLis,LinkedList