Jmeter 分布式压测

作者: wenshuang_he | 来源:发表于2020-04-09 22:09 被阅读0次

    为什么要做分布式压测?

    在进行性能压测的时候,往往需要很大的并发量。但是一台电脑由于硬件方面的原因,支持的并发数并不能达到上万级别。公司的这台电脑只支持到2000的并发,内存和cpu就告急了。明显一台电脑支持不了我们的需求,这个时候就需要我们用到分布式了。


    1.png

    实现方式:一台控制机搭配多台压力机,同时对服务器进行压力测试。压力机执行性能测试脚本,返回结果到控制机。控制机同时可作为压力机。

    准备工作:

    1.主从机在同一局域网下,保证能ping通
    2.Master和Slave安装相同版本的Jmeter。和相同版本的jdk
    3.关闭防火墙
    4.保证电脑运行的只有一个网卡(ipconfig只显示一个ip信息),如果多网卡需要指定网卡通讯。

    1. 在主控机的jmeter下的bin目录找到配置文件jmeter.properties。如图所示,修改内容为:remote_hosts=xx,xx代表的是压力机的ip。多个压力机之间用 , 分隔。

    2.png

    如果端口被占用,修改server_port


    3.png

    2. 配置完了运行执行机jmeter bin目录下的jmeter-server.bat文件,但是会报错,提醒要加密。这时候有两种方法
    第一种,设置SSL。如图所示,双击create-rmi-keystore.bat

    image.png

    根据提示一直填下去,遇到yes与No就直接填:Y 然后回车就ok了,要注意:生成的rmi_keystore.jks复制到每一台压力机的jmeter/bin目录下

    第二种:修改控制机和压力机bin目录下jmeter.properties文件中server.rmi.ssl.disable=true 禁用SSL

    image.png

    3. 启动控制机的jmeter -server.bat ,再启动jmeter.bat

    4. 然后控制机启动jmeter,配置性能测试脚本

    5. 配置完成后,点击【运行】——【远程启动】可以看到所有的压力机,可以选择一台启动,也可以点击【运行】——【远程全部启动】。

    image.png

    6. 查看结果树,查看执行结果

    报错信息-解决方法

    1. 报错: java.io.FileNotFoundException: rmi_keystore.jks (系统找不到指定的文件。)
      2.png

    处理:修改控制机和压力机bin目录下jmeter.properties文件中server.rmi.ssl.disable=true 禁用ssl

    3.png
    1. 报错:Connection refused to host:192.168.1.104;nested exception is: java.net.ConnectException: Connection refused:connect
      4.png

    处理:在启动Jmeter之前要先启动Jmeter -server

    流下了木有技术的泪水.png

    参考:

    1. https://blog.csdn.net/lt326030434/article/details/81065848
    2. https://blog.csdn.net/ljj123_/article/details/90664342
    3. https://jmeter.apache.org/usermanual/jmeter_distributed_testing_step_by_step.html
    4. https://blog.csdn.net/luozhonghua2014/article/details/80418114
    5. https://www.cnblogs.com/zhouxiongjie/p/12595111.html

    相关文章

      网友评论

        本文标题:Jmeter 分布式压测

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