app网站推广平台,wordpress瀑布流图片主题,logo设计说明模板100字,wordpress 替换谷歌字体序 本文记录了我在新公司的首次压测遇到的一些问题以及解决方案。公司服务部署在国外#xff0c;网络延迟导致的压不上去#xff0c;需要本地调试脚本#xff0c;然后用国外服务器压测的过程。同时记录了过程中遇到的一些问题#xff0c;特别是Jmeter本身占用CPU资源#…序 本文记录了我在新公司的首次压测遇到的一些问题以及解决方案。公司服务部署在国外网络延迟导致的压不上去需要本地调试脚本然后用国外服务器压测的过程。同时记录了过程中遇到的一些问题特别是Jmeter本身占用CPU资源需要修改参数。
安装包
Jmeter包已调好配置参数
通过网盘分享的文件apache-jmeter-5.6.3.zip 链接: https://pan.baidu.com/s/1-L6ASOdnBwvWi5_gpAW1gw?pwd4uce 提取码: 4uce --来自百度网盘超级会员v3的分享
脚本配置
1、新建线程组 2、脚本配置
新加HTTP请求 脚本配置 添加请求头 添加参数化 注意用相对路径因为要拷贝到远程机器运行绝对路径会找不到文件运行不起来还没报错。
3、压测报表 虚拟机配置
安装Java环境
1、先从官网下载jdk1.8.0_131.tar.gz再从本地上传到Linux服务器
2、解压tar -xzf jdk1.8.0_131.tar.gz生成文件夹 jdk1.8.0_131 jdk存放目录/home/azureuser/jmeter/jdk1.8.0_451 修改配置vi /etc/profile export JAVA_HOME/home/azureuser/jmeter/jdk1.8.0_451
export PATH$JAVA_HOME/bin:$PATH 加载配置 source /etc/profile 查看是否安装成功java -version 安装Jmeter
1、本地Jmeter打包。最好用跟本机一样的jmeter不会出现插件不一致等导致的运行不起来
2、传到服务器
3、解压缩 tar -xvzf apache-jmeter-5.6.3.tgz
unzip jmeter路径/home/azureuser/jmeter/apache-jmeter-5.6.3 4、配置Jmeter环境变量。
vi /etc/profile再添加如下变量 export JMETER_HOME/home/azureuser/jmeter/apache-jmeter-5.6.3
export CLASSPATH$JMETER_HOME/lib/ext/ApacheJMeter_core.jar:$JMETER_HOME/lib/jorphan.jar: export PATH$JMETER_HOME/bin:$JAVA_HOME/bin:$PATH 5、source /etc/profile 让配置文件立马生效
6、查看是否安装成功执行命令jmeter -v 设置Jmeter启动内存
1.创建setenv.sh文件
在jmeter的bin目录下新建setenv.sh配置文件在文件中配置jvm参数
export JVM_ARGS-Xms4096m -Xmx4096m -XX:MaxMetaspaceSize2048m
大小参考本机可用内存50%-70%之间 修改Jmeter参数 1、system.properties
增加modeStrippedBatch 2、解决timewait问题 修改所有jmeter主机-负载机配置 使用httpclient4客户端 jmeter.properties httpclient4.time_to_live300000 httpclient4.validate_after_inactivity1000 httpclient4.request_sent_retry_enabledtrue httpclient4.retrycount2 hc.parameters.filehc.parameters httpclient.reset_state_on_thread_group_iterationfalse 3、hc.parameters http.connection.stalecheck$Booleantrue 4、客户端配置 运行jmeter
jmx文件单独放/home/azureuser/jmeter/jmx jmeter安装于/home/azureuser/jmeter/apache-jmeter-5.6.3 本地文件上传到服务器注意使用到的数据文件也要传过去可以整个目录传(使用的ssh软件electerm) 进入 jmx所在目录
jmeter -n -t hawbTracks.jmx -l result_hawbTracks_05310813.jtl -L DEBUG
jmeter -n -t hawbTracks.jmx -l result_hawbTracks_05312207.jtl -e -o ./result 生成html报告result 目前提前清空
jmeter -n -t hawbTracks.jmx -l result_hawbTracks_06031927.jtl -e -o ./06031927_result 监控查看
1、压测指标QPS、RT。关注响应时间增加明显QPS增量低无需再加QPS防止压挂服务器。 2、服务器情况查看
机器情况以Grafa查看 服务qps、响应以及响应时间明细用skywalking查看 3、从网关层压测所以网关服务器性能也需要关注下
4、压测服务器的性能也需关注下。可以开多个窗口top命令看服务器情况 常见命令
top本机性能指标查看1 - 每个cpu指标查看MiB Mem-内存查看
ps -ef pid : 进程查看
报告查看
1、报告回传到本机 2、打开jtl文件 3、result中index.html浏览器打开
使用jmeter -n -t hawbTracks.jmx -l result_hawbTracks_05312207.jtl -e -o ./result 生成html报告可以直接查看 问题记录
1、网络损耗
本地压测由于是中国网段压测美国网段网络损耗巨大。对比如下
本地压测情况3个并发 服务器压测情况压测服务器与被压测服务器都在美国 对比发现网络损耗在600ms。所以需要使用同区域压测服务器来压得到真实的性能情况。 2、Jmeter中响应时间疑惑
现象本地Jmeter压测时间稳定在600ms左右但是POSTMAN是偶尔600ms多多数在200ms。
原因Postman接口发送使用的端口会有链接缓存不会每次新建连接。现象上佐证隔段时间请求是600ms不间隔再次访问是200ms。
3、服务端Jmeter运行报错jpgc组件找不到
原因运行的官网下载的jmeter里面没有相关组件导致
4、服务端Jmeter运行无数据生成无报错直接停止了
配置的脚本的csv文件配置的windows中绝对路径拷贝到linux上找不到文件导致运行不起来。
5、压测机本身性能问题导致QPS上不去 1、关闭部分java程序。 ps -ef pid查看进程信息
2、增加jmeter内存大小
3、多台机器压测
4、修改jmeter配置 - 有用