jmeter分布式压测

用jmeter进行压测时,在大并发几千上万的情况下,一个机器的资源(硬件资源cpu内存,网络资源带宽等)往往是不够用的,因此就需要分布式压测技术

分布式压测顾名思义就是用多个机器协同一起施压,由一个master机器作为发起机器,多个slave机器作为施压机器,salve和master的jmeter版本最好保持一致,jmeter不分系统拷过去就是了

1,linux配置jmeter

vi /etc/profile

在最后一行添加

export JMETER_HOME=/root/apache-jmeter-5.2.1
export PATH=${JMETER_HOME}/bin:$PATH

然后source /etc/profile

执行jmeter -v,如下表示成功

jmeter分布式压测_第1张图片

2,配置slave机器

进入bin目录

vi jmeter.properties

server_port=1234(自定义端口号,避免被占用)

                -server.rmi.localport=1234(跟上面设置的端口号一致)

                -server.rmi.ssl.disable=true

     修改jmeter-server:

                -RMI_HOST_DEF=-Djava.rmi.server.hostname=192.168.0.106(绑定本机ip)

        启动slave机上jmeter bin目录下的jmeter-server(jmeter-server.bat for windows),记录ip和port

修改master配置并远程启动slave

         修改jmeter.properties:

                -server.rmi.ssl.disable=true

                -remote_hosts=192.168.0.106:1234(与slave上配置的ip、port对应)

                备注:若有多个slave,使用逗号分隔多个ip、port,如remote_hosts=ip1:port1,ip2:port2        

         在master机上,打开测试脚本,启动-->远程启动slave机,可以启动单个slave或全部启动

                          jmeter分布式压测_第2张图片

         可在master上使用聚合报告、查看结果树等监听器实时查看slave机的执行情况

        此种方法往往只适合并发不大的情况,如果并发百万级别,就需要开发自己的性能测试系统,可以批量部署slave加压机,并自动配置,在系统同上执行加压参数配置,并可执行脚本,该系统可以用jmeter的核心引擎做二次开发

你可能感兴趣的:(linux)