首页 > 编程学习 > jmeter分布式压测在内网(外网)部署注意事项

分布式压测

分布式压测前提条件

  • 控制机和压力机都在内网,使用内网通信

  • 控制机和压力机都用公网ip,使用外网通信

  • 不管是部署在本地还是虚拟机或者云服务器,开放所需端口,其中RMI通信存在附加端口,详见此文了解:https://blog.csdn.net/smooth00/article/details/115342555

  • 如果使用非系统java环境,需要在java运行文件中增加设置

    • liunx:在jemter、jmeter.sh中增加:

      JAVA_HOME=/opt/jdk-11.0.1/
      JVM_ARGS="-Dnashorn.args=--no-deprecation-warning"
      
    • windows:在jmeter.bat中增加:

      set JAVA_HOME=/opt/jdk-11.0.1/
      set JVM_ARGS="-Dnashorn.args=--no-deprecation-warning"
      
  • 压力机的jmeter的路径需要一致

  • 如果使用到csv文件,需要每个压力机都有该文件,且路径与脚本中设置一致

windows为控制机,liunx为负载机

  • master控制机配置 编辑jmeter.properties配置文

  • slave负载机1与slave负载机2一样的配置 注意ip即可 两个负载机是linux的所以 vim jmeter.properties

  • linux负载机启动jmeter-server时可能会报错 编辑文件 vim jmeter-server

控制机及负载机都是liunx

  • jmeter -n -t test.jmx -R ip1,ip2,ip3 -l testReport.jtl其中 -R 指定远程连接的slave机器的ip地址,多个ip之间用逗号隔开。

  • 启动脚本,增加-r参数会读取配置文件中的ip,来启动远程服务。jmeter -n -t test.jmx -r -l test.jtl

  • 当然还可以通过 上面说的-R 参数来覆盖jmeter.properties中的remote.hosts

    jmeter -n -t test.jmx -R 192.168.3.156:1099 -l test.jtl 效果都是一样的。如果这里出现卡顿,可能是插件配置文件等,没有统一。或者端口没有开放,修复好以后,需要停掉slave的服务在进行启动,否则可能出现下列错误

Copyright © 2010-2022 mfbz.cn 版权所有 |关于我们| 联系方式|豫ICP备15888888号