--- 最近用jmeter做了一次3萬(wàn)并發(fā)用戶的性能測(cè)試,測(cè)試過(guò)程中對(duì)jmeter工具本身進(jìn)行了幾次優(yōu)化吱涉,總計(jì)一下幅聘,希望對(duì)使用jmeter做性能測(cè)試的各位有一些幫助。
--- 主要是對(duì)日志內(nèi)容和java內(nèi)存的使用進(jìn)行了一些優(yōu)化余寥,避免施壓機(jī)端的瓶頸造成“OFFM”和“Time Out”錯(cuò)誤领铐。
1.Jmeter--運(yùn)行優(yōu)化
---(1)jmeter輸出html日志需要修改配置文件jmeter.properties
---修改參數(shù)如下:
----timeout 設(shè)置
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)施壓機(jī)端 可直接運(yùn)行命令
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 &
---說(shuō)明:
--- nohup .... >/dev/null 2>&1 & (表示后臺(tái)運(yùn)行進(jìn)程,并且不輸出nohup.out日志記錄宋舷,減小日志的磁盤寫入)
--- java -server -jar -jar /home/apache-jmeter-3.0/bin/ApacheJMeter.jar -Dserver_port=1099 -s (jmeter-server绪撵,在1099端口 以server來(lái)運(yùn)行)
--- -XX:+HeapDumpOnOutOfMemoryError -Xms96G -Xmx96G(可調(diào)整 -Xms 和 -Xmx 的大小來(lái)排除 java OFFM 錯(cuò)誤,大小建議為 物理內(nèi)存的1/3 到 1/2)
---(3)主控機(jī) 可直接運(yùn)行命令
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 &
---說(shuō)明:
--- nohup .... >/dev/null 2>&1 & (表示后臺(tái)運(yùn)行進(jìn)程祝蝠,并且不輸出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運(yùn)行命令)
--- -Xms4G -Xmx64G -XX:MaxPermSize=2G(-Xms4G -Xmx64G -XX:MaxPermSize=2G,可適當(dāng)調(diào)整Xmx為物理內(nèi)存的1/3到1/2大小绎狭,-Xms可調(diào)整為流大小的2倍(例如流媒體最大流為1G细溅,可設(shè)置Xms為2G;并相應(yīng)的調(diào)整MaxPermSize=1G))