jmeter壓測報錯問題彙總:

一、單場景壓測:1500用戶持續併發3分鐘時,jmeter腳本報錯:
Response code: Non HTTP response code: java.net.BindException
Response message: Non HTTP response message: Address already in use: connect
原因分析:
windows端口被耗盡了(默認1024-5000),而且操作系統要2-4分鐘纔會重新釋放這些窗口,所以可以增加windows的可用端口來解決。windows端口最大數爲65534

解決方法一:
修改操作系統註冊表
1、cmd輸入:regedit
2、找到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\TCPIP\Parameters
3、新建 DWORD值,name:MaxUserPort,value:65534(十進制)
4、重啓系統

解決方法二:
將HTTP請求:改成短鏈接(去掉 使用 keepAlive 的勾)
jmeter壓測報錯問題彙總:

兩種解決方法均設置後,請求的錯誤百分比可以大大降低

二、socket closed
問題原因:在JMeter下,發送http 請求時,一般都是默認選擇了use keepAlive,這個是連接協議,默認勾選了這個(如果不勾選的話,也不會保存),但其配置JMeter.properties中的時間設置默認卻是註銷的,也是是說,不會等待,一旦連接空閒,則立馬斷開了,導致我們壓測中出現了事務失敗的情形。
解決:修改httpclient4.idletimeout=<time in ms> 設置成自己覺得合理的時間,一般可設置成10-60s(表示連接空閒10s後纔會斷開),注意這邊單位是ms。修改完成後再次壓測,錯誤不再有了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章