--- 最近用jmeter做了一次3万并发用户的性能测试,测试过程中对jmeter工具本身进行了几次优化,总计一下,希望对使用jmeter做性能测试的各位有一些帮助。
--- 主要是对日志内容和java内存的使用进行了一些优化,避免施压机端的瓶颈造成“OFFM”和“Time Out”错误。
1.Jmeter--运行优化
---(1)jmeter输出html日志需要修改配置文件jmeter.properties
---修改参数如下:
----timeout 设置
httpclient.timeout=0
0 == no timeout
----zidingyi------####
jmeter.save.saveservice.bytes = true
jmeter.save.saveservice.label = true
jmeter.save.saveservice.latency = true
jmeter.save.saveservice.response_code = true
jmeter.save.saveservice.response_message = true
jmeter.save.saveservice.successful = true
jmeter.save.saveservice.thread_counts = true
jmeter.save.saveservice.thread_name = true
jmeter.save.saveservice.time = true
jmeter.save.saveservice.timestamp_format = ms
jmeter.save.saveservice.timestamp_format = yyyy/MM/dd HH:mm:ss
jmeter.save.saveservice.assertion_results_failure_message = true
------------------zidingyi
---(2)施压机端 可直接运行命令
nohup java-server -XX:+HeapDumpOnOutOfMemoryError -Xms96G -Xmx96G -jar /home/apache-jmeter-3.0/bin/ApacheJMeter.jar -Dserver_port=1099 -s -j jmeter-server.log >/dev/null 2>&1 &
---说明:
--- nohup .... >/dev/null 2>&1 & (表示后台运行进程,并且不输出nohup.out日志记录,减小日志的磁盘写入)
--- java -server -jar -jar /home/apache-jmeter-3.0/bin/ApacheJMeter.jar -Dserver_port=1099 -s (jmeter-server,在1099端口 以server来运行)
--- -XX:+HeapDumpOnOutOfMemoryError -Xms96G -Xmx96G(可调整 -Xms 和 -Xmx 的大小来排除 java OFFM 错误,大小建议为 物理内存的1/3 到 1/2)
---(3)主控机 可直接运行命令
nohup java -Xms4G -Xmx64G -XX:MaxPermSize=2G -jar /home/apache-jmeter-3.0/bin/ApacheJMeter.jar -n -R 172.25.32.76:1099,172.25.32.77:1099 -t /home/jmx/small_no_wait_30000.jmx -l no_wait_30000.jtl -e -o ./testout >/dev/null 2>&1 &
---说明:
--- nohup .... >/dev/null 2>&1 & (表示后台运行进程,并且不输出nohup.out日志记录,减小日志的磁盘写入压力)
--- java ... -jar /home/apache-jmeter-3.0/bin/ApacheJMeter.jar -n -R 172.25.32.76:1099,172.25.32.77:1099 -t /home/jmx/small_no_wait_30000.jmx -l no_wait_30000.jtl -e -o ./testout (jmeter的一般主控java运行命令)
--- -Xms4G -Xmx64G -XX:MaxPermSize=2G(-Xms4G -Xmx64G -XX:MaxPermSize=2G,可适当调整Xmx为物理内存的1/3到1/2大小,-Xms可调整为流大小的2倍(例如流媒体最大流为1G,可设置Xms为2G;并相应的调整MaxPermSize=1G))