CentOS 上优化 JMeter 的实用清单
一 运行环境与脚本基础优化
jmeter -n -t script.jmx -l result.jtl -e -o report。在脚本调试阶段再启用少量监听器。jmeter -n -t test.jmx -Jconcurrent_number=200 -Jcycles=5 -l log.jtl。二 JVM 与内存调优
jmeter 或 jmeter.sh),将堆设置为相同初值与峰值(如 -Xms4g -Xmx4g),并限制元空间(如 -XX:MaxMetaspaceSize=512m)。堆不宜过小(GC 频繁)也不宜过大(单次 GC 停顿长),通常不超过可用物理内存的80%。jmeter.properties 中设置 httpclient4.idletimeout=10000(单位毫秒),复用连接、降低握手与 TIME_WAIT 压力。三 操作系统与网络调优
/etc/security/limits.conf:* soft nofile 65536
* hard nofile 65536
* soft nproc 65565
* hard nproc 65565
root soft nofile 65536
root hard nofile 65536
root soft nproc 65565
root hard nproc 65565
tcp_tw_recycle 有约束,生产环境谨慎启用)。示例 /etc/sysctl.conf:net.ipv4.ip_local_port_range = 1024 65000
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_fin_timeout = 30
net.core.somaxconn = 1024
net.ipv4.tcp_max_syn_backlog = 1024
vm.swappiness 以减少换页;使用 nice/renice 调整 JMeter 进程优先级;必要时采用网卡多队列提升网络吞吐。四 分布式压测与结果准确性
jmeter.properties 中设置 server.rmi.ssl.disable=true;在 jmeter-server 启动脚本中显式指定本机 IP(如 -Djava.rmi.server.hostname=192.168.x.x),避免多网卡/虚拟 IP 导致连接异常。jmeter.properties 中配置 remote_hosts=ip1:1099,ip2:1099;必要时固定 server.rmi.localport 与 server_port 便于防火墙放行。jmeter -n -t script.jmx -R 192.168.30.132:1099,192.168.30.130:1099 -l result.jtl -e -o report。五 监控与容量规划