jmeter分布式压力测试

1.环境:分布式压力测试,用两台win10华硕笔记本作为slave,服务器部署在Linux上
2.配置文件:在master机器上,更改bin目录下jmeter.properties文件,添加remote_hosts=ip+端口(slave)
3.slave机器的jmeter.properties添加
server_port=8888(自定义端口号)
server.rmi.localport=8888
4.有耐性jmeter之前,slave机器需要先执行jmeter-server.bat,保持运行状态
5.进入jmeter后,添加请求,然后点击运行->远程全部启动,开始进行压测
6.可以在jmeter-server.bat开启的命令行中能够查看任务运行情况
7.JDBC参数化


image.png

ps:
聚合报告
Samples:样本数
Average:平均响应时间
Median:中位数,50%响应时间小于此值
90%line:90%响应时间小于此值
Min:最短响应时间
Max:最大响应时间
Error:未命中数/比率
Throughput:吞吐量——每秒完成请求事务数
Kb/sec:每秒接收数据量

踩过的坑:
1.master,slave需要关闭防火墙,要不然你真的不知道为什么下发总是失败,ping不通,但是本机却可以正常跑脚本
2.如果线程开启过多,可能会使网络阻塞,master无法控制slave,jmeter数据统计会出现异常,因此需要根据实际硬件配置,网络带宽进行线程数量以及ramp-up设置
3.断言尽量多设置几条,很多时候网络延时会是结果出现很大的误差,需要根据断言进行判断结果是否正确
4.由于MySQL数据类型为timestamp,默认值为0000-00-00,所以查询时需要带时间戳,否则会提示Response message: java.sql.SQLException: Value '0000-00-00 00:00:00' can not be represented as java.sql.Timestamp
例如:jdbc:mysql://${ip}:${port}/${dbname}?useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&transformedBitIsBoolean=true

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,915评论 18 139
  • 互联网压力性能Badboy.Jmeterhttp://itopic.org/jmeter-http-tcp.htm...
    燕京博士阅读 2,937评论 0 20
  • 主要文体来自 CDNS:https://www.cnblogs.com/ceshisanren/p/5639895...
    Amano阅读 11,074评论 3 27
  • 在使用Jmeter进行接口的性能测试时,由于Jmeter 是JAVA应用,对于CPU和内存的消耗比较大,所以,当需...
    燕京博士阅读 4,205评论 0 16
  • 我们每个人,曾经的痛苦,曾经的辉煌,曾经的挫折都藏在了时光里。 朋友圈的新功能“隐藏6个月前的朋友圈”简直不能再好...
    夏天的小蘑菇阅读 5,506评论 12 10