JMeter 进行压力测试
liunx jmeter
啟動腳本
jmeter.sh -n -t test.jmx -l result.jtl參數說明
- h 幫助 -> 打印出有用的信息并退出 - n 非GUI模式 -> 在GUI模式下進行JMeter測試 - t 測試文件 要運行的JMeter測試腳本文件 - l 日志文件 記錄結果的文件 - r 遠程執行 啟動遠程服務 - H 代理主機 設置JMeter使用的代理主機 - P 代理端口 設置Jmeter使用的代理主機的端口號分析結果
將生成的 result.jtl 文件,下載到window中,并window版jmeter中使用 聚合報告查看結果信息。
JMeter的測試結果字段的意義
1. Label: 定義的HTTP請求名稱
2. Samples: 表示這次測試中一共發出了多少個請求
3. Average: 訪問頁面的平均響應時間
4. Min: 訪問頁面的最小響應時間
5. Max: 訪問頁面的最大響應時間
6. Error%: 錯誤的請求的數量/請求的總數
7. Throughput:每秒完成的請求數
8. KB/Sec: 每秒從服務器端接收到的數據量
遇到的問題
java.net.NoRouteToHostException: Cannot assign requested address
liunx環境下進行壓力測試,發現結果存在erro,查看?result.jtl?發現存在一些錯誤消息?1509777594480,4,HTTP請求,Non HTTP response code: java.net.NoRouteToHostException,Non HTTP response message: Cannot assign requested address (Address not available),線程組 1-378,text,false,,2080,0,1000,1000,0,0,4?。
錯誤原因:?由于liunx 分配的客戶端連接端口用盡,無法建立socket連接所致,雖然socket正常關閉,但是端口不是立即釋放,而是處于 TIME_WAIT 狀態,默認等待60s后釋放。
查看liunx支持的客戶端連接端口范圍,也就是 28232 個端口。?cat /proc/sys/net/ipv4/ip_local_port_range
32768 - 61000
解決方法:
1. 調低端口釋放后的等待時間,默認為60s,修改為15~30s。echo 30 > /proc/sys/net/ipv4/tcp_fin_timeout
2. 修改 tcp/ip 協議配置,通過配置?/proc/sys/net/ipv4/tcp_tw_reuse,默認為0,修改為1,釋放TIME_WAIT端口給新連接使用。?echo 1 > /proc/sys/net/ipv4/tcp_tw_reuse
3. 修改 ctp/ip 協議配置,快速回收socket資源,默認為0.修改為1。echo 1 > /proc/sys/net/ipv4/tcp_tw_recycle
擴展閱讀
java多線程&&Jmeter壓測實現
?
轉載于:https://my.oschina.net/xiaominmin/blog/3082686
總結
以上是生活随笔為你收集整理的JMeter 进行压力测试的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Asp.net 2.0 发送电子邮件
- 下一篇: Gbase与oracle数据库的区别