zoukankan      html  css  js  c++  java
  • Jmeter分布式测试

    Jmeter分布式测试

    本文为原创,转载请注明出处:https://www.cnblogs.com/supiaopiao/p/10856821.html

    一、为什么要用分布式测试?

    在使用Jmeter进行性能测试时,如果并发数比较大(比如项目需要支持1000并发),单台主机的配置(CPU和内存)可能无法支持,这时可以使用Jmeter提供的分布式测试的功能。

     

    二、Jmeter分布式执行原理:

     

    Jmeter分布式测试时,本地jmeter作为控制机(master),其它机器做为执行机(slave)。执行时,master会把脚本发送到每台slave上,slave 拿到脚本后就开始执行。执行完成后,slave会把结果回传给master,master会收集所有slave的信息并汇总。

     

    三、配置:

    注意:windows和linux上的jmeter的版本一致会比较好,将windows和linux上的防火墙都关闭。

     

    (一)控制机(master)配置

     

     Windows系统上,将下载下来的jmeter解压后,修改apache-jmeter-5.1.1in目录里的jmeter.properties文件,在260行新增remote_hosts配置,配置里配置的是两台slave主机的ip和slave主机里安装的jmeter的端口号。

     

    (二)执行机(slave)配置

     

    1. 上传jmeter到slave服务器

    因为jmeter需要有jdk的支持所以将jdk和jmeter都上传到slave主机/software文件夹下。

     

     

     

    2. 解压jdk和jmeter后配置环境变量

    [root@localhost ~]# vim /etc/profile

     

    #java环境变量

    export JAVA_HOME=/software/jdk1.8.0_131/

    export PATH=$JAVA_HOME/bin:$PATH

    export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

    #jmeter环境变量

    export JMETER_HOME=/software/apache-jmeter-5.1.1

    export CLASSPATH=$JMETER_HOME/lib/ext/ApacheJMeter_core.jar:$JMETER_HOME/lib/jorphan.jar:$JMETER_HOME/lib/logkit-2.0.jar:$CLASSPATH

    export PATH=$JMETER_HOME/bin/:$PATH

     

    3. 修改jmeter部分配置

    打开/ apache-jmeter-5.1.1/bin目录

    (1)修改jmeter.properties文件

     

    remote_hosts=192.168.0.132  #ip是这台slave主机的ip

    server_port=1098 #端口号是jmeter自定义的端口号,默认是1099

    备注:该remote_hosts和server_port配置需要和本地master的jmeter.properties文件里新增的260行配置一致。

     

     

     

    server.rmi.localport=1098

     

     

     

     

     

    server.rmi.ssl.disable = true  #否则远程执行,会报一个ssl错误

     

     

     

     

    #防止响应回来的数据有中文乱码

     

    jmeter.save.saveservice.response_data=true  jmeter.save.saveservice.samplerData=true

     

     

    (2)修改jmeter-server文件

    配置这台slave主机的ip

    RMI_HOST_DEF=-Djava.rmi.server.hostname=192.168.0.132

     

     

    4. 启动各个slave上的jmeter

    [root@localhost bin]# jmeter-server

     

    (三)配置多台slave只需要参照文档(二)进行配置即可。

    执行测试

    本地远程连接slave主机上的jmeter,并执行脚本(有两种启动方式)

     

    例如:本地jmeter脚本是往数据库里添加随机数据,循环20次。

     

     远程连接两台服务器上的jmeter执行后,数据库里就会有40条数据,并且结果树里也会收集到所有slave主机上的jmeter运行结果信息,到此一个简单的分布式测试就完成了。

  • 相关阅读:
    论文阅读 | Spatial Transformer Networks
    Latex的各种帽子
    SiamFC网络影响
    Faster RCNN Tensorflow在测试时得到的result.txt文件
    ubuntu16.04使用docker部署TFserving之安装docker
    ubuntu系统使用Faster RCNN训练自己的数据集
    pandas基础1数据结构介绍
    numpy基础4线性代数等
    numpy基础3通用函数等
    numpy基础2索引和切片
  • 原文地址:https://www.cnblogs.com/supiaopiao/p/10856821.html
Copyright © 2011-2022 走看看