做性能測試的時候遇到一個很奇怪的問題,多線程的計划,有一個線程第一次能跑過,第二次確跑不過,單獨跑這個線程跑多少次都沒有問題,把思考時間改短也沒有問題,唯獨出現在特定的狀態下,特定狀態是啥,也不得而知,反正是幾個設置疊加再一起碰巧出現。。。我就郁悶了。。。牆外的朋友貌似都有人遇到,牆內的沒搜到,所以寫了這樣一篇文章簡單記錄一下,解決方法:
現象如圖
第一次成功,第二次失敗,所以錯誤率是50%
取樣器的結果是這樣的:
具體的錯誤信息:
看上去像是jmeter的bug,百思不得其解。google之。。。解決方案如下,當然可能在部分情況下沒辦法解決,此方法僅作參考:
1.修改HTTP請求下面的Impementation選項,改成HttpClient4
2.在user.properties文件內修改:
hc.parameters.file=hc.parameters
3.在hc.parameters文件內修改:
http.connection.stalecheck$Boolean=true
重啟Jmeter再嘗試一下
另外改問題在2.10以后的版本開始出現,原因有兩點:
1.Jmeter 2.10以后禁用了失敗請求重試
2.Jmeter 2.10以后禁用了失效檢查
這兩點其實也就是上面解決方案的思路,啟動了stalecheck。
修改過后,效果不錯,順利解決問題。