美文网首页
jmeter(十六)分布式压测

jmeter(十六)分布式压测

作者: Sandra_liu | 来源:发表于2020-01-09 16:14 被阅读0次

    1、分布式压测前提条件:

    • 系统上的防火墙已关闭或打开了正确的端口。
      Centos防火墙设置可以参考https://blog.csdn.net/ytangdigl/article/details/79796961

    • 所有客户端都在同一子网中。

    • 如果使用192.xxx或10.xxx IP地址,则服务器位于同一子网中。如果服务器不使用192.xx或10.xx IP地址,则应该没有任何问题。
      三台机的IP分别为10.10.10.83,10.10.10.220,10.10.10.221

    • 确保JMeter可以访问服务器。

    • 确保在所有系统上使用相同版本的JMeter和Java。混合版本将无法正常工作。
      三台机上面安装的jmeter版本均是5.1.1,三台机上装的Java版本分别为1.8.0、

    • 您已经为RMI设置了SSL或将其禁用。

    2、原理图

    image.png

    3、master配置

    • CSV Data Set Config


      image.png
    • jmeter.properties文件修改

    • remote_hosts=10.10.10.220:1089,10.10.10.221:1089

    • server.rmi.ssl.disable=true

    4、slave配置

    • server_port=1089
    • server.rmi.localport=1089
    • server.rmi.ssl.disable=true

    5、slave启动jmeter-server

    启动成功则显示如下日志:
    Created remote object: UnicastServerRef2 [liveRef: [endpoint:[10.10.10.221:1089](local),objID:[-1983a04d:16f89498bd6:-7fff, 2199364678249006616]]]

    6、GUI模式-master启动脚本

    image.png

    通过日志检查是否启动成功


    image.png

    7、非GUI模式-master启动脚本

    参数
    -n 非GUI模式运行 -t 测试脚本 -l 测试报告 -j 日志 -e -o 一起使用,后面跟生成报告的空目录

    启动本地机器

    jmeter -n -t C:\Users\Administrator\Desktop\jmeter\xiaobien.jmx -l F:\apache-jmeter-5.1.1\apache-jmeter-5.1.1\bin\report\xiaobien.csv -j F:\apache-jmeter-5.1.1\apache-jmeter-5.1.1\bin\report\xiaobien.log
    

    启动远程机器-全部

    jmeter -n -t C:\Users\Administrator\Desktop\jmeter\xiaobien.jmx -r 
    jmeter -n -t C:\Users\Administrator\Desktop\jmeter\xiaobien.jmx -r -l F:\apache-jmeter-5.1.1\apache-jmeter-5.1.1\bin\report\xiaobien.csv -j F:\apache-jmeter-5.1.1\apache-jmeter-5.1.1\bin\report\xiaobien.log
    

    启动远程机器-单台

    jmeter -n -t C:\Users\Administrator\Desktop\jmeter\xiaobien.jmx -R 10.10.10.89:1089 -l F:\apache-jmeter-5.1.1\apache-jmeter-5.1.1\bin\report\xiaobien.csv -j F:\apache-jmeter-5.1.1\apache-jmeter-5.1.1\bin\report\xiaobien.log
    

    8、查看测试报告-手动导入

    查看summary报告


    image.png

    查看tps报告


    image.png

    9、报告中显示空白,没有响应数据

    user.properties配置
    jmeter.save.saveservice.output_format=xml jmeter.save.saveservice.response_data=true jmeter.save.saveservice.samplerData=true jmeter.save.saveservice.url=true jmeter.save.saveservice.requestHeaders=true
    jmeter.properties配置
    jmeter.save.saveservice.output_format=xml jmeter.save.saveservice.response_data=true jmeter.save.saveservice.samplerData=true

    9、启动jmeter-server脚本

    #! /bin/sh
    source /etc/profile
    source ~/.bash_profile
    nohub jmeter-server >/dev/null 2>&1 &
    sleep 2
    process_id=`ps -ef |grep jmeter-server | awk '{print $2}'`
    echo jmeter-server process $process_id has started
    exit 0
    

    10、关掉jmeter-server脚本

    #! /bin/sh
    spid=`ps -ef  | grep jmeter-server | awk '{ print $2 }'`;echo $spid;echo $pid;for pid in $spid;do if [ -n $pid ]; then kill -9 $pid; fi; done
    exit 0
    

    相关文章

      网友评论

          本文标题:jmeter(十六)分布式压测

          本文链接:https://www.haomeiwen.com/subject/rukjactx.html