1. 环境准备:安装Java与JMeter
JMeter是基于Java的工具,需先安装JDK(推荐OpenJDK 8,兼容性好)。通过sudo yum install java-1.8.0-openjdk-devel安装后,验证版本(java -version)。JMeter下载建议选择官网最新稳定版(如5.5+),手动解压至/opt目录(避免权限问题),并通过编辑~/.bashrc添加export PATH=$PATH:/opt/apache-jmeter-5.5/bin配置环境变量,使jmeter命令全局可用。
2. 配置优化:调整JVM与系统参数
bin/jmeter.properties文件,设置合理的堆内存(避免过大导致GC停顿,建议为物理内存的70%-80%),例如HEAP="-Xms4g -Xmx4g -XX:MaxMetaspaceSize=512m";同时关闭SSL(server.rmi.ssl.disable=true)以减少加密开销。/etc/security/limits.conf,增加JMeter进程的文件描述符和进程数限制(防止单进程占用过多资源):* soft nofile 65535; * hard nofile 100000; * soft nproc 65535; * hard nproc 100000。/etc/sysctl.conf优化网络与内存性能,例如减少Swap使用(vm.swappiness=10)、调整脏页刷新阈值(vm.dirty_ratio=20; vm.dirty_background_ratio=10)、增大连接队列(net.core.somaxconn=65535)、启用TCP BBR拥塞控制(net.ipv4.tcp_congestion_control=bbr),执行sysctl -p使配置生效。3. 脚本编写:遵循高效设计原则
-l result.jtl)仅记录结果。${__Random()}),避免自定义代码增加开销。4. 分布式测试:提升并发能力
systemctl stop firewalld)或放行JMeter端口(默认1099)。jmeter.properties,设置remote_hosts为Slave节点IP及端口(如remote_hosts=192.168.1.101:1099,192.168.1.102:1099);Slave节点编辑jmeter-server文件,取消RMI_HOST_DEF注释并设置为当前IP。jmeter -n -t test.jmx -R 192.168.1.101:1099,192.168.1.102:1099),避免GUI模式(GUI会增加30%内存开销)。5. 性能监控:实时掌握系统状态
top(查看CPU/内存使用率)、vmstat(查看系统负载)、iostat(查看磁盘I/O)等命令监控CentOS系统资源;若使用Docker部署,可通过docker stats查看容器资源占用。6. 日志与报告:便于问题排查
jmeter.log(位于bin目录),记录测试过程中的错误与警告;可通过-j参数指定日志路径(如jmeter -n -t test.jmx -j /var/log/jmeter.log),定期清理旧日志避免磁盘空间不足。-e -o参数生成HTML报告(如jmeter -n -t test.jmx -l result.jtl -e -o /opt/jmeter/report),报告中包含响应时间分布、吞吐量趋势、错误率分析等内容,便于后续分析。