Récemment, je travaille sur un script de performance qui testera le service tiers.jmeter java.net.SocketException: réinitialisation de la connexion (après modification des paramètres)
Test est très simple, chaque thread doit poster une demande. Nombre de sujets - 100, Ramp Up - 680 s
Lors de l'exécution nombre maximum de threads actifs est 12. `m en utilisant Jmeter version 3.2, mais aussi essayé sur 2.1.
Malheureusement, je suis obtenir java.net.SocketException
: Erreur de réinitialisation de connexion pour les demandes de 20-30%. Erreur complète à la fin de la publication.
déjà passe modifier les propriétés mentionnées dans de nombreux sujets similaires ici (par exemple: I m getting java.net.SocketException: Connection reset exception while running a load test using Jmeter).
J'ai ajouté:
httpclient4.retrycount=1
hc.parameters.file=hc.parameters
dans les propriétés utilisateur
http.socket.timeout$Integer=120000 (such big value is set just for test reasons ;))
http.connection.stalecheck$Boolean=true in hc.parameters
httpclient.timeout=1200000
httpclient4.idletimeout=1200000 (same as previous) in jmeter.properties
J'ai également changé les valeurs par défaut HTTP Request Sampler dans l'onglet Avancé pour: HTTPClient4
et les délais d'attente fixés à 120000
.
Note: si grand délais d'attente de test sont liés au temps que certains de la demande peut prendre du côté de service (même 10 minutes).
Malheureusement, après tous ces changements, je m `encore obtenir cette erreur et les responsables du service, après analyse a répondu qu'il n'y a rien de leur côté.
erreur complète:
java.net.SocketException: Connection reset;
at java.net.SocketInputStream.read(Unknown Source);
at java.net.SocketInputStream.read(Unknown Source);
at sun.security.ssl.InputRecord.readFully(Unknown Source);
at sun.security.ssl.InputRecord.read(Unknown Source);
at sun.security.ssl.SSLSocketImpl.readRecord(Unknown Source);
at sun.security.ssl.SSLSocketImpl.readDataRecord(Unknown Source);
at sun.security.ssl.AppInputStream.read(Unknown Source);
at org.apache.http.impl.io.AbstractSessionInputBuffer.fillBuffer(AbstractSessionInputBuffer.java:158);
at org.apache.http.impl.io.SocketInputBuffer.fillBuffer(SocketInputBuffer.java:82;
at org.apache.http.impl.io.AbstractSessionInputBuffer.readLine(AbstractSessionInputBuffer.java:271);
at org.apache.http.impl.conn.DefaultHttpResponseParser.parseHead(DefaultHttpResponseParser.java:138);
at org.apache.http.impl.conn.DefaultHttpResponseParser.parseHead(DefaultHttpResponseParser.java:56);
at org.apache.http.impl.io.AbstractMessageParser.parse(AbstractMessageParser.java:259);
at org.apache.http.impl.AbstractHttpClientConnection.receiveResponseHeader(AbstractHttpClientConnection.java:281);
at org.apache.http.impl.conn.DefaultClientConnection.receiveResponseHeader(DefaultClientConnection.java:257);
at org.apache.jmeter.protocol.http.sampler.hc.ManagedClientConnectionImpl.receiveResponseHeader(ManagedClientConnectionImpl.java:199);
at org.apache.jmeter.protocol.http.sampler.MeasuringConnectionManager$MeasuredConnection.receiveResponseHeader(MeasuringConnectionManager.java:212);
at org.apache.http.protocol.HttpRequestExecutor.doReceiveResponse(HttpRequestExecutor.java:273);
at org.apache.http.protocol.HttpRequestExecutor.execute(HttpRequestExecutor.java:125);
at org.apache.http.impl.client.DefaultRequestDirector.tryExecute(DefaultRequestDirector.java:684);
at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:486);
at org.apache.http.impl.client.AbstractHttpClient.doExecute(AbstractHttpClient.java:835);
at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:83);
at org.apache.jmeter.protocol.http.sampler.HTTPHC4Impl.executeRequest(HTTPHC4Impl.java:654);
at org.apache.jmeter.protocol.http.sampler.HTTPHC4Impl.sample(HTTPHC4Impl.java:413);
at org.apache.jmeter.protocol.http.sampler.HTTPSamplerProxy.sample(HTTPSamplerProxy.java:74);
at org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase.sample(HTTPSamplerBase.java:1189);
at org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase.sample(HTTPSamplerBase.java:1178);
at org.apache.jmeter.threads.JMeterThread.executeSamplePackage(JMeterThread.java:491);
at org.apache.jmeter.threads.JMeterThread.processSampler(JMeterThread.java:425);
at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:254);
at java.lang.Thread.run(Unknown Source);
avec 10 threads aucune erreur ne se produit? – user7294900
N'a pas testé avec 10 threads, mais en regardant l'exécution en direct (les rapports partiels sur la console (mode non-GUI) sont apparus même quand moins de 10 threads étaient actifs) –
Des commentaires sur la réponse? Si tout va bien, il devrait être accepté et upvoted afin qu'il soit utile aux autres. merci –