Jmeter 压力测试笔记(4)--分布式部署
分布式部署:坑,大坑~ 超级坑~~~~
在这里坑了2天,整整2天。其它略过不表下面只写经验:
在linux下,centos7系统 1主 14执行机。 jmeter版本 5.2.1 所有机器在同一个内网。
分布式部署时需要修改的配置:
1,执行机:
在官方下载原始zip包后,修改 bin 目录下:
jmeter.properties 中 文件参数 【 server.rmi.ssl.disable=true】 关闭SSL验证
jmeter-server 文件中 【RMI_HOST_DEF=-Djava.rmi.server.hostname=192.168.71.39】 修改IP地址为执行机本身IP---即通过ipconfig或ifcofnig查询得到的地址。 每个执行机都不一样。
2,JDK:尽量使用同一版本JDK。 一般大版本同样基本都行。但不确定。 jmeter 5.2.1配1.8 JDK
3,在目录下创建 ApiTest_CSV;ApiTest_log;ApiTest_Script;目录方便用来执行脚本,保存结果数据。
4:调度机: 调度机的配置要求可以不用太高2C4G一般就够用。
调度机需要修改的配置:
远程执行机IP配置:jmeter.properties 文件中 【remote_hosts=127.0.0.1】 修改ip地址为执行机ip地址。用逗号隔开。
server_port=1099:启用默认端口
如果需要配置其它端口,在ip后面带上 127.0.0.1:1099, 默认端口1099
jmeter.properties 中 文件参数 【 server.rmi.ssl.disable=true】 关闭SSL验证
jmeter-server文件中:RMI_HOST_DEF=-Djava.rmi.server.hostname=127.0.0.1 不进行修改
5:修改执行机使用的JVM内存:
网上有很多修改配置文件的方法,但我不太喜欢用。加上这次压力测试,并没做成持续集成。所以我喜欢使用命令的方式来进行设置:
【JVM_ARGS="-Xms1024m -Xmx3500m" ./jmeter-server】 设置内存为3500M---实际并发时发现大概1个线程会消耗3M的内存(并不通用)。所以具体配置多少内存看你的线程数量。 建议配置的内存大小不超过机器内存总量的一般,否则可能会卡会慢。
这些都配置好以后:在windows上修改好jmx脚本后,就可以放到 调度机上来执行啦~
执行命令:
【jmeter -n -t "/home/tst/ApiTest_Script/move_0406_1200TPS_moreUser.jmx" -l /home/tst/ApiTest_log/0410.csv -r 】 可以加 【&】 符号在后台执行。
停止命令: 在jmeter /bin 目录下 执行 ./stoptest.sh;
强制杀死 ./shutdown.sh
结果显示输出: 异常率高:经过排查,是连接响应超时:在服务器端并未受到这些丢失的请求。具体原因还未排查到。 可能与前端nginx配置有关系。也可能被拒绝了。---(问题已经找到,阿里云服务器开启了独享代理模式,导致NGINX与数据库之间连接同步,使用了长连接模式,导致数据库连接不释放。坑,真坑。)
Jmeter 压力测试笔记(4)--分布式部署的更多相关文章
- jmeter压力测试笔记- HTTP协议
一.目标 使用jmeter进行HTTP接口压力测试: 命令行方式运行,方便在linux环境运行: 二.面临的问题 支持多环境测试(开发.测试.生产环境) 支持用户数据.线程数.循环次数等配置在运行时自 ...
- Jmeter压力测试笔记(6)性能调测-压力并发-模拟生产环境数据
问题原因找到了,那就好办了. 找到阿里云技术人员,让他们强行给我们上架了一个共享代理模式的Redis. 并重新进行压力测试. 哦豁~ 开心,压力测试顺利,异常率大大降低实际为: 数据库DBA反馈,数据 ...
- Jmeter 压力测试笔记(2)--问题定位
事情已经出了,是该想办法解决的时候了. 经过运维和DBA定位: 数据库读写分离中,读库延时超过了30秒,导致所有请求都压在主库.另外所有数据库都连接数都被占满,但活跃请求数量缺不多. 数据库16K的连 ...
- Jmeter 压力测试笔记(3)--脚本调试/签名/cookie/提升吞吐量/降低异常率/提升单机并发性能
import XXXsign.Openapi2sign;---导入jar包中的签名方法 String str1 = "12121"; ---需要被签名的字段:向开发了解需要哪些哪些 ...
- Jmeter压力测试笔记(5)问题原因
压测链路是jmeter=>slb=>nginx => php=>rds 报 Too Many Connections 的原因是前端同时保持了 16000 个连接,达到实例规格的 ...
- Jmeter 压力测试笔记(1)--服务器迁移失败
近期,公司服务器因技术架构升级等原因需要迁移,在经过开发,运维DBA,测试多部门进行联合讨论后,制定出了迁移方案.迁移前也对APP应用进行了各种测试,并没有发现问题. 凌晨2点开始迁移,5点完成迁移. ...
- JMeter压力测试,http请求压测,5分钟让你学会如何压测接口!
JMeter压力测试 官网:https://jmeter.apache.org 最新款的jmeter需要java8的支持,所以请自行安装jdk8.这里就不啰嗦了. 可以根据自己的系统下载zip或者是t ...
- JMeter压力测试以文件的形式
JMeter压力测试入门教程[图文] 1. 下载JMeter 2. 启动JMeter 3. 运行预准备 4. 运行 文章目录 Apache JMeter是Apache组织开发的基于Java的压力测试工 ...
- jmeter 压力测试
转自: https://blog.csdn.net/cbzcbzcbzcbz/article/details/78023327 Jmeter压力测试简单教程(包括服务器状态监控) 2017年09月18 ...
随机推荐
- python的基本数据类型简介
python的基本数据类型有:数字-numbers.字符串-str.列表-list.元组-tuple.字典-dict.布尔-bool.集合-set 下面来个概览先大概了解一下,后面博文中咱再细说- 1 ...
- php制作缩略图
PHP制作缩略图 1.制作缩略图的函数 imagecopyresampled(dest,src,dx,dy,sx,sy,dw,dh,sw,sh) 说明: dest 目标画布 src 原图(要缩略的图片 ...
- 【BIM】BIMFACE中创建矢量文本[下篇]
背景 在上一篇文章中,我们通过THREEJS创建了矢量文本,并添加到了BIMFACE场景中,但是仅仅加入到场景中并不是我们的目的,我们的目的是把这种矢量文本加到指定的构件或者空间上,以此标识该构件或空 ...
- kafka原理解析
两张图读懂kafka应用: Kafka 中的术语 broker:中间的kafka cluster,存储消息,是由多个server组成的集群. topic:kafka给消息提供的分类方式.broker用 ...
- 某些时候 v-if 会导致 v-modal 内部数据获取不到 也watch不到,这个时候用v-show即可,另外提一下数组要整体赋值才有双向绑定
某些时候 v-if 会导致 v-modal 内部数据获取不到 也watch不到,这个时候用v-show即可,另外提一下数组要整体赋值才有双向绑定
- 升级到Chrome 80+的SameSite问题,及Asp.net站点修改
缘起 有用户反映,之前正常使用的站点,出现无法登录情况. 调查 用户使用场景,使用iframe嵌套了我们的Web,跨在一个跨域 用户升级了最新的Chrome 80 根据浏览记录看到,Post请求没有发 ...
- 理解Go语言组件flag
作用 主要用来实现命令行的参数解析,以达到实现以下效果的目的 $ cmd -flagname 123 使用方式 flag是Go语言的内置包,能接收的参数类型主要有字符串.布尔和数值类型. 方式一 fu ...
- 关于Web2.0
前言:本来是想写HTML的,发现没什么好写的,就简单写一下Web2.0好了 什么是Web 2.0: "Web 2.0 is the business revolution in the co ...
- 免费开源数字货币交易所——基于Java开发的比特币交易所 | BTC交易所 | ETH交易所 | 数字货币交易所
本项目是基于Java开发的比特币交易所 | BTC交易所 | ETH交易所 | 数字货币交易所 | 交易平台 | 撮合交易引擎.本项目基于SpringCloud微服务开发,可用来搭建和二次开发数字货币 ...
- 基于Modbus三种CRC16校验方法的性能对比
目录 1.背景介绍 2. CRC校验的三种方法 2.1. 直接计算CRC校验 2.2. 查短表法计算CRC16校验 2.3.查大表法计算CRC16校验 3.三种校验方式的测试方法 3.1.直接计算CR ...