• 压测必经之路,Jmeter分布式压测教程


    01、分布式压测原理

    Jemter分布式压测是选择其中一台作为调度机(master),其他机器作为执行机(slave);当然一台机器也可以既做调度机,也做执行机。

    调度机执行脚本的时候,master将会jmx脚本分发到slave上,slave拿到脚本后以非GUI的形式开始执行。

    slave执行完毕后将结果回传给master,并由master进行结果的汇总。

    02、环境搭建

    2.1 环境准备

    master:Windows10,JMeter版本5.1.1,jdk版本1.8;

    slave:2台linux虚拟机(CentOS 7),JMeter版本与master一致,5.1.1,jdk版本1.8;

    总结:slave上JDK和Jmeter版本尽量和master上保持一致。

    2.2 slave机器配置

    关闭各slave机器上防火墙

    systemctl stop firewalld

    关闭各slave机器上SSL配置。RMI的默认传输机制将使用SSL,SSL需要密钥和证书才能工作。

    解决方法有两种:一种是启动bin目录下的create-rmi-keystore脚本,另一种是不使用SSL。这里采用第二种。

    修改bin目录下的jmeter.properties文件vim jmeter.propertiesserver.rmi.ssl.disable=true

    进入bin目录下编辑文件

    将注释去掉且值改为true

    设置服务器主机IP

    编辑bin目录下的jmeter-server文件,取消RMI_HOST_DEF的注释项,固定设置当前Linux主机查询到的IP。

    进入bin目录下编辑文件

    取消注释且修改IP

    启动Jemter服务

    启动bin目录下的jmeter-server文件

    2.3 master机器配置

    修改配置文件

    打开bin目录下的jmeter.properties文件,修改remote_hosts的值。修改为两台salve机器的ip及端口。

    03、脚本及执行

    3.1 参数化问题

    如果脚本中使用到参数化文件,需要将CSV参数化文件上传到各个salve机器上,且路径要相同,然后再脚本CSV文件路径这里配置对应的参数。

    3.2 GUI启动测试

    运行->远程启动。查看配置的salve机器IP

    运行->远程启动所有。启动分布式压测

    3.3 命令行启动测试

    上面是使用GUI图形上去启动slave机器去运行压测,也可以直接通过命令行启动压测并生成报告。

    jmeter -n -t G:\Test\1.1login_linux.jmx -l G:\Test\result\1.jtl -e -o G:\Test\html\1 -R 192.168.30.132:1099,192.168.30.130:1099
    jmeter -n -t jmx脚本路径 -l jtl文件路径 -e -o 报告路径 -R salve的IP地址:端口,salve的IP地址:端口

    需要注意的是,执行命令中的jtl文件路径和报告路径需要是不存在,否则会出错。


    绵薄之力

    最后感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走

    ​这些资料,对于想进阶【自动化测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。希望对大家有所帮助…….

  • 相关阅读:
    一文深度解读边缘计算产业发展前景
    如何做好测试用例设计
    基于支持向量机的试剂条图像识别,基于SVM的图像识别,SVM的详细原理,Libsvm工具箱使用注意事项
    miniUI datagrid 修改列表信息
    send_sig: 内核执行流程
    【Python脚本进阶】2.3、利用FTP与Web批量抓“ 肉机”(下):在FTP服务器上搜索网页+注入代码
    NPM 详解
    【pen200-lab】10.11.1.10
    arthas诊断windows服务模式运行的Java进程
    Java读写Jar
  • 原文地址:https://blog.csdn.net/jiangjunsss/article/details/127855073