在 Debian 上使用 JMeter 进行负载测试的完整流程
一 环境准备
java -versionsudo apt update && sudo apt install -y openjdk-11-jdkwget https://downloads.apache.org//jmeter/binaries/apache-jmeter-5.4.1.tgztar -xzf apache-jmeter-5.4.1.tgz && cd apache-jmeter-5.4.1jmeter 命令。二 创建测试计划
./bin/jmeterContent-Type: application/json。test_plan.jmx),后续在服务器以非 GUI 模式运行。三 非 GUI 运行与报告生成
jmeter -n -t test_plan.jmx -l result.jtljmeter -n -t test_plan.jmx -l result.jtl -e -o report/jmeter -g result.jtl -e -o report/-n 非 GUI 模式;-t 指定 JMX 脚本;-l 结果日志(CSV/XML);-e 运行结束后生成报告;-o 报告输出目录(必须为空)。四 分布式压测与扩展
./bin/jmeter-serverjmeter.properties 中设置:server.rmi.ssl.disable=true(取消注释并改为 true)。jmeter.properties 配置 remote_hosts=agent1:1099,agent2:1099jmeter -n -t test_plan.jmx -R agent1,agent2 -l remote_result.jtl -e -o remote_report/jmeter -n -t test_plan.jmx -r -l remote_result.jtl -e -o remote_report/五 性能与稳定性优化
bin/jmeter 或 jmeter.sh 的 HEAP 变量),例如:
HEAP="-Xms2g -Xmx4g -XX:+UseG1GC"(按机器内存与场景调整)。jmeter.properties/user.properties):
jmeter.save.saveservice.response_data=false;按需开启必要字段。summariser.interval=10(更频繁输出进度)。httpclient4.time_to_live=60000httpclient4.retrycount=1(避免重试干扰指标)jmeter.reportgenerator.overall_granularity=60000