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

    10个多月前使用jmeter 3.0 做分布式测试博客,由于jmeter版本更新不再适用,现在以此为题,重新写一篇博客,介绍jmeter 新版本5.1.1分布式方法。

    jmeter 分布式性能测试需要有个前提:

    前提:
    1、关闭防火墙
    2、所有客户端在同一个子网里面
    3、服务端也和客户端在同一个子网里面
    4、 jmeter 能访问服务端
    5、 jmeter 版本要一致,版本不一致可能导致运行不正常
    6、需要所有的jmeter 都要设置好ssl for rmi(与之前版本不一样,自动jmeter 4.0 以后,分布式通讯是通过ssl安全协议,这种协议是通过加密传输并需要证书解密)

    步骤:

    1、准备3台在同一个局域网内的机器,一台作为master主控机,两台作为slave 执行机
      master机器ip:192.168.1.104
      slave1 windows机器ip:192.168.1.107
    slave2 centos ip:192.168.1.101
    2、在3台机器上安装同样版本的jmeter (5.1.1)和 java
    3、关闭slave机器的防火墙,从master 机器能ping通到slave机器上
    4、在master机器上jmeter bin目录下命令行下执行命令: create-rmi-keystore.bat,执行命令过程中会询问加密因子的填写,可以随意填写。再确认信息的时候要输入“y”。
    最后在:输入 <rmi> 的密钥口令,直接回车

    第4步完成,会在bin目录下生成rmi_keystore.jks 文件,需要把这个文件拷贝到各个slave机上的jmeter 的bin目录下

    D:	oolsapache-jmeter-5.1.1in>create-rmi-keystore.bat
    您的名字与姓氏是什么?
      [Unknown]:  aa
    您的组织单位名称是什么?
      [Unknown]:  aa
    您的组织名称是什么?
      [Unknown]:  aa
    您所在的城市或区域名称是什么?
      [Unknown]:  aa
    您所在的省/市/自治区名称是什么?
      [Unknown]:  aa
    该单位的双字母国家/地区代码是什么?
      [Unknown]:  aa
    CN=aa, OU=aa, O=aa, L=aa, ST=aa, C=aa是否正确?
      [否]:  y
    
    输入 <rmi> 的密钥口令
            (如果和密钥库口令相同, 按回车):
    
    Warning:
    JKS 密钥库使用专用格式。建议使用 "keytool -importkeystore -srckeystore rmi_keystore.jks -destkeystore rmi_keystore.jks -deststoretype pkcs12" 迁移到行业标准格式 PKCS12。
    "Copy the generated rmi_keystore.jks to jmeter/bin folder or reference it in property 'server.rmi.ssl.keystore.file'"

    5、slave1 机器进入jmeterin 目录,点击 jmeter-server.bat,启动jmeter remote 服务

    6、slave2 机器进入jmeterin目录,执行如下命令启动服务:
      ./jmeter-server -D java.rmi.server.hostname=192.168.1.101

      

    7、master 主控机打开jmeterinjmeter.properties 文件, 设置  remote_hosts 
    remote_hosts=192.168.1.101:1099,192.168.1.107:1099
    remote_hosts是设置jmeter slave机器ip值和端口,默认端口1099 也可以配置其他端口,(多个用逗 号隔开)  
    8、master 主控机打开jmeterinsystem.properties 文件, 设置  java.rmi.server.hostname
    java.rmi.server.hostname=192.168.1.104

    java.rmi.server.hostname 是设置主控机器的ip

    9、设置好脚本,执行命令:jmeter -n -t case.jmx -l result -R 192.168.1.101:1099,192.168.1.107:1099
    (多个用逗号隔开)  

    执行完成,主控机器显示配置了2台远程服务,2台slave 都显示有信息,说明调用远程服务成功

    Starting the test on host 192.168.1.101:1099 @ Fri May 03 00:30:19 PDT 2019 (1556868619022)
    Finished the test on host 192.168.1.101:1099 @ Fri May 03 00:30:21 PDT 2019 (1556868621256) 

    Starting the test on host 192.168.1.101:1099 @ Fri May 03 00:30:19 PDT 2019 (1556868619022)
    Finished the test on host 192.168.1.101:1099 @ Fri May 03 00:30:21 PDT 2019 (1556868621256)

    欢迎关注技术微信公众号:

  • 相关阅读:
    python numpty 中shape的用法
    卷积神经网络中参数的计算
    linux学习
    数据结构排序算法总结
    剑指offer 刷题 01
    30-大道至简——随机森林如何将分类器由弱变强
    29-用python构造一棵决策树
    28-决策树算法——简单有效的概率模型
    27-如何度量分类算法的性能好坏(Scoring metrics for classification)
    26-史上最简单的分类算法——KNN
  • 原文地址:https://www.cnblogs.com/testway/p/10805347.html
Copyright © 2011-2022 走看看