注意事项:
1、如果有集群,先压单台服务器,在针对单台服务器的性能进行调优后,再压集群;
2、在压测过程中,查看压力机cpu和服务器cpu使用率做对比,若压力机cpu使用率很高,可能压力机配置不够,会影响测试结果;
3、当线程数较大时,线程启动时间要适当调大一些,预热时间调整为3min;
当http请求需要保持长连接时
1、jmeter的http请求,Basic:use KeepAlive需要处于被选中状态;
2、jmeter的http请求,advanced-Client implementation-implementation,选择HttpClient4;
3、调整jmeter-bin目录下的jmeter.properties,调整为httpclient4.idletimeout=60000;
4、验证长连接,netstat -tnp |grep 端口号,查看服务对应的端口是否一直在变化,若没有,则长连接正常;否则,长连接失败。
查看连接:netstat -tnp |grep 9099 |wc -l
后台执行jmeter
nohup jmeter -n -t /usr/local/JMeter/script/ESB_API.jmx -l 0118_API_01_AggregateReport_400.csv&
profiler监控压测过程中所有线程占用资源的情况
async-profiler-2.9-linux-x64.tar.gz
执行命令:./profiler.sh -d 30 -f profile.html 12006
服务器启动文件,为了使用jcmd的 JFR
在启动参数加上-XX:+UnlockCommercialFeatures -XX:+FlightRecorder
开始压测1分钟之后,用jcmd <PID> JFR.start开始捕获,1分钟之后JFR.dump
734 fcmd -h
739 jcmd 12006 JFR.start
741 jcmd 12006 JFR.dump recording=1 filename=2.jfr
744 tar zcvf 2.jfr.tar.gz 2.jfr
745 ls -ltr
747 jps
748 jstack 12006 >> 3.txt
749 vi 3.txt
751 grep -n -B1 -A20 -i "state: runnable" 3.txt > a.txt
带行和行号筛选出 含有"state: runnable" 不分大小写,(-B1)后1行,(-A20)前20行的内容
752 vi a.txt
753 grep -n -B30 -i "primeton" 3.txt > p.txt
ServerAgent:
<a href="https://gitcode.com/mirrors/undera/perfmon-agent/overview?utm_source=csdn_github_accelerator" data-spm-anchor-id="a2c6h.12873639.article-detail.9">下载官网地址</a>
标签:jmeter,grep,12006,性能,jcmd,测试,注意事项,JFR,txt From: https://www.cnblogs.com/xiaobingdiaoyu/p/17989389