在 CentOS 上使用 JMeter 进行应用性能测试
一 环境准备与安装
sudo yum install -y java-1.8.0-openjdk-devel,然后 java -version 验证。tar -xzf apache-jmeter-5.4.3.tgz -C /opt/,建议创建软链:ln -s /opt/apache-jmeter-5.4.3 /opt/jmeter。source /etc/profile):
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdkexport JMETER_HOME=/opt/jmeterexport PATH=$JMETER_HOME/bin:$PATHjmeter -v 应输出版本号。二 测试计划设计与本地调试
/opt/jmeter/script/test.jmx)。三 在 CentOS 上执行压测与生成报告
jmeter -n -t /opt/jmeter/script/test.jmx -l /opt/jmeter/results/test.jtljmeter -n -t /opt/jmeter/script/test.jmx -l /opt/jmeter/results/test.jtl -e -o /opt/jmeter/results/report-n 非 GUI;-t 指定 .jmx;-l 指定 .jtl 结果;-e 生成报告;-o 报告输出目录(必须为空)。-e -o 在 CentOS 生成 HTML 报告后下载查看。四 提升吞吐的系统与 JMeter 调优
JVM_ARGS):
-Xms2g -Xmx8g(不超过物理内存的约 2/3),并配置元空间:-XX:MaxMetaspaceSize=512m。ulimit -n 102400* soft nofile 65536、* hard nofile 65536* soft nproc 65565、* hard nproc 65565sysctl -p):
net.ipv4.tcp_tw_reuse = 1、net.ipv4.tcp_fin_timeout = 30net.ipv4.ip_local_port_range = 1024 65000worker_connections 64000、keepalive_timeout 60s(结合实例规格与业务调优)。httpclient4.idletimeout=10000(毫秒),避免长空闲导致连接异常。五 分布式压测与实时监控
jmeter -n -t test.jmx -R 192.168.1.11,192.168.1.12 -l test.jtl -e -o report(使用 -R 指定远程从机)。