zoukankan      html  css  js  c++  java
  • jmeter分布式踩得坑汇总

    一、普通的配置文件基本都能网上搜索资料,这里就简单记录:
    a、jmeter.properties几处修改:1、remote_hosts=master压力机Ip;2、server_port,开启服务器端口,记得要一致,差不多都是默认1099,记得有时候排查问题,看端口是否占用,netstat -ntlp
    |grep 1099;3、一般局域网内网压测,所以要开启:server.rmi.ssl.disable=true;这个里面的文件基本搞定。
    b、修改jmeter-server文件,一般来说这个可以不用修改,RMI_HOST_DEF=-
    Djava.rmi.server.hostname=本机IP。
    c、然后各自启动jmeter-server,nohup即可。这个也是标准 nohup sh jmeter-server > nohup.out 2>&1 & 。补充,有时候jmeter-server服务有问题,快速kill,可以用 ps -ef | grep
    jmeter-server | grep -v grep | cut -c 9-15 | xargs kill -s 9,然后在直接重启。
    d、分布式压测,有csv文件,放在slave的bin目录最简单,如果有其他jar包,各自都需要有。

    二、在配置的环境的时候,总有一些奇葩的问题:
    1、每一台slave都应该执行相同的执行计划,一般情况master和slave最好分开,因为master需要给slave分发信息,也会接受slave回传的测试结果,所以master一般会消耗很大。master和slave上的
    java和jmeter版本最好一直,要不然出现的问题让你死的心都有
    2、分布式压测的时候,参数化数据一般情况应该真实,而jmeter不会给你分配不同的数据,这个时候建议准备不同的csv文件,或者代码控制分发
    3、在进行断言的时候,如果你不是java高手,建议你不要写beanshell逻辑断言,保不准你的代码直接影响压测结果;再生成结果树的时候,一定要记得勾选仅记录错误日志。
    4、首先要确保master和slave之间的通信是ok,方法是:ping一下对方的IP即可;如果不通,检查下网络是否在同一个局域网里。
    5、4.0版本jmeter新增keystore,需要先设置 keystore 才能正常进行分布式测试,不然会报以下错误,说什么文件不存在。在 master的 JMETER_HOME/bin/ 路径,Windows 系统运行create-rmi-keystore.bat,Unix 系统(包含 Linux,macOS)运行create-rmi-keystore.sh。将rmi_keystore.jks复制到所有 Slave 的JMETER_HOME/bin/路径,即可。

  • 相关阅读:
    FreeMarker配置详解
    tab显示不同数据
    EL表达式可以直接放在url的“ ”里面
    js的搜索框
    js实现tab页面不同内容切换显示
    如何让html中的td文字只显示部分
    MobileNets: Open-Source Models for Efficient On-Device Vision
    LFW Face Database下载
    python遍历文件夹
    把cifar数据转换为图片
  • 原文地址:https://www.cnblogs.com/Slowfish/p/13421265.html
Copyright © 2011-2022 走看看