Я получаю java.net.SocketException: исключение сброса соединения при выполнении нагрузочного теста с использованием Jmeter
Я запускаю нагрузочный тест на странице входа в приложение для 100 пользователей из 100 20 пользователей проходят остальные 80 пользователей, я получаю следующее исключение, пожалуйста, помогите мне с исправлением
java.net.SocketException: Connection reset
at java.net.SocketInputStream.read(Unknown Source)
at java.net.SocketInputStream.read(Unknown Source)
at org.apache.http.impl.io.AbstractSessionInputBuffer.fillBuffer(AbstractSessionInputBuffer.java:166)
at org.apache.http.impl.io.SocketInputBuffer.fillBuffer(SocketInputBuffer.java:90)
at org.apache.http.impl.io.AbstractSessionInputBuffer.readLine(AbstractSessionInputBuffer.java:281)
at org.apache.http.impl.conn.DefaultHttpResponseParser.parseHead(DefaultHttpResponseParser.java:92)
at org.apache.http.impl.conn.DefaultHttpResponseParser.parseHead(DefaultHttpResponseParser.java:61)
at org.apache.http.impl.io.AbstractMessageParser.parse(AbstractMessageParser.java:254)
at org.apache.http.impl.AbstractHttpClientConnection.receiveResponseHeader(AbstractHttpClientConnection.java:289)
at org.apache.http.impl.conn.DefaultClientConnection.receiveResponseHeader(DefaultClientConnection.java:252)
at org.apache.http.impl.conn.ManagedClientConnectionImpl.receiveResponseHeader(ManagedClientConnectionImpl.java:191)
at org.apache.http.protocol.HttpRequestExecutor.doReceiveResponse(HttpRequestExecutor.java:300)
at org.apache.http.protocol.HttpRequestExecutor.execute(HttpRequestExecutor.java:127)
at org.apache.http.impl.client.DefaultRequestDirector.tryExecute(DefaultRequestDirector.java:715)
at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:520)
at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:906)
at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:805)
at org.apache.jmeter.protocol.http.sampler.HTTPHC4Impl.executeRequest(HTTPHC4Impl.java:505)
at org.apache.jmeter.protocol.http.sampler.HTTPHC4Impl.sample(HTTPHC4Impl.java:328)
at org.apache.jmeter.protocol.http.sampler.HTTPSamplerProxy.sample(HTTPSamplerProxy.java:74)
at org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase.sample(HTTPSamplerBase.java:1141)
at org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase.sample(HTTPSamplerBase.java:1130)
at org.apache.jmeter.threads.JMeterThread.process_sampler(JMeterThread.java:431)
at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:258)
at java.lang.Thread.run(Unknown Source)
1 ответ
Я полагаю, что вы столкнулись с проблемой, описанной в " Сброс подключения", начиная с JMeter 2.10? JMeter вики-страница. Если вы полностью уверены в правильности поведения тестируемого приложения и не нуждаетесь в настройке или настройке на стороне сервера, вы можете настроить JMeter для повторной попытки отклоненных соединений и проверки устаревших соединений:
- Измените "Внедрение" всех ваших сэмплеров HTTP-запросов на
HttpClient4
, Самый простой способ сделать это - использовать элемент конфигурации HTTP Request Defaults. Добавьте следующие свойства в файл user.properties, который находится в папке /bin вашей установки JMeter:
httpclient4.retrycount=1 hc.parameters.file=hc.parameters
Добавьте следующую строку в файл hc.parameters (там же, где находится папка /bin JMeter)
http.connection.stalecheck$Boolean=true
- Перезапустите JMeter.
Ваша проблема "сброса соединения" должна исчезнуть.