JMeter & Connection reset.....Que faire ?

121 views
Skip to first unread message

Jean-Marie Markowski

unread,
Sep 2, 2015, 2:31:06 AM9/2/15
to JMeter en français
Bonjour à tous,

Me voici de retour parmi vous, j'espère que vous avez passer de bonne vacances et que vous êtes tous en pleine forme.

Je vous fait part d'un problème que je rencontre, de la solution que j'ai trouvé sur le WEB, et des questions que je me pose :)

Voici le problème :

J'ai réalisé un scénario et durant l'exécution je constate qu'à partir d'un certain nombre de 100 U.V. les erreurs arrivent en masse (+/- 70 %) !!
Sachant que l'architecture est capable de gérer +/- 3.000 utilisateurs, une limite de 100 UV avec des temps d'attente variant entre 10 et 20 sec entre les différentes étapes cela surprend.

Dans la majorité des cas après la barrière des 100 U.V. le message est :

java.net.SocketException: Connection reset
at java.net.SocketInputStream.read(Unknown Source)
at java.net.SocketInputStream.read(Unknown Source)
at java.io.BufferedInputStream.fill(Unknown Source)
at java.io.BufferedInputStream.read(Unknown Source)
at org.apache.commons.httpclient.HttpParser.readRawLine(HttpParser.java:78)
at org.apache.commons.httpclient.HttpParser.readLine(HttpParser.java:106)
at org.apache.commons.httpclient.HttpConnection.readLine(HttpConnection.java:1116)
at org.apache.commons.httpclient.HttpMethodBase.readStatusLine(HttpMethodBase.java:1973)
at org.apache.commons.httpclient.HttpMethodBase.readResponse(HttpMethodBase.java:1735)
at org.apache.commons.httpclient.HttpMethodBase.execute(HttpMethodBase.java:1098)
at org.apache.commons.httpclient.HttpMethodDirector.executeWithRetry(HttpMethodDirector.java:398)
at org.apache.commons.httpclient.HttpMethodDirector.executeMethod(HttpMethodDirector.java:171)
at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:397)
at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:323)
at org.apache.jmeter.protocol.http.sampler.HTTPHC3Impl.sample(HTTPHC3Impl.java:265)
at org.apache.jmeter.protocol.http.sampler.HTTPSamplerProxy.sample(HTTPSamplerProxy.java:74)
at org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase.sample(HTTPSamplerBase.java:1146)
at org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase.sample(HTTPSamplerBase.java:1135)
at org.apache.jmeter.threads.JMeterThread.process_sampler(JMeterThread.java:434)
at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:261)
at java.lang.Thread.run(Unknown Source)

Je cherche sur le WEB et je trouve des paramètres à changer dans la configuration JMeter ( https://wiki.apache.org/jmeter/JMeterSocketClosed )

Je redémarre JMeter qui est en 2.13 avec le plug in 1.3.0 et le JDK 1.8.60. Le tout fonctionnant sur un serveur virtuel Windows Serveur 2008 R2 en 32Gb de ram dédié à JMeter. :)

Pour l'application j'utilise HttpClient 3.1


Résultat : Après un second démarrage, j'ai +/- 60 % d'erreurs, mis à part le fait que j'ai gagné 10 %, j'ai le même type d'erreur Connection reset.......
Ce que j'essaie de comprendre, c'est la raison de la modification apportée dans JMeter. Pour ma part, je comprend que JMeter envoi la requête, si cela ne fonctionne pas il réexpédie une nouvelle fois. Du coup on ne tient pas compte de l'erreur et c'est ce qui fait réduire le taux d'erreurs. :)

Ma question est de savoir s'il faut vraiment modifier la configuration de JMeter où faut-il chercher ailleurs.

Je vous remercie d'avance pour votre aide.

Amicalement,



Milamber

unread,
Sep 2, 2015, 3:17:10 AM9/2/15
to jmet...@googlegroups.com

Salut,

C'est un bug de JMeter qui a été corrigé dans la future version 2.14
https://bz.apache.org/bugzilla/show_bug.cgi?id=57921

Il est lié aux connections Keep-Alive.

Tu peux utiliser une version de dev (nightly) de JMeter, cela devrait être mieux.

A+
--
Vous recevez ce message, car vous êtes abonné au groupe Google Groupes "JMeter en français".
Pour vous désabonner de ce groupe et ne plus recevoir d'e-mails le concernant, envoyez un e-mail à l'adresse jmeter-fr+...@googlegroups.com.
Pour envoyer un message à ce groupe, envoyez un e-mail à l'adresse jmet...@googlegroups.com.
Visitez ce groupe à l'adresse http://groups.google.com/group/jmeter-fr.
Pour obtenir davantage d'options, consultez la page https://groups.google.com/d/optout.

Jean-Marie Markowski

unread,
Sep 2, 2015, 7:31:33 AM9/2/15
to JMeter en français
Bonjour Milamber,

Tout grand merci pour l'info je vais la télécharger et je ferai un feedback

Bonne journée.

Jean-Marie Markowski

unread,
Sep 2, 2015, 9:54:35 AM9/2/15
to JMeter en français
C'est l'effet domino,

Le JMeter Plug-in 1.3.0 empêche JMeter 2.14 Build 1700700 de fonctionner correctement :(

On va patienter.



Philippe Mouawad

unread,
Sep 2, 2015, 12:30:34 PM9/2/15
to jmet...@googlegroups.com
En gros le bug ici est que votre serveur (Load Balancer ou Apache ou IIS ou autre) gère mal le keep-alive et ne renvoie pas dans la réponse la durée de ce keep alive.
JMeter avait un bug en 2.13 qui dans ce cas particulier renvoyait la valeur de la propriété httpclient4.idletimeout (0 par défaut) entrainant le problème car la connection est gardée ouverte côté JMeter mais fermée de l'autre côté.
Dans mes expériences le taux d'erreur conséquent est rarement élevé, votre cas est étrange et je suis curieux de savoir si c'est vraiment votre problème.

Vous pouvez contourner ce bug  en 2.13 en positionnant httpclient4.idletimeout à une valeur < au timeout de KEEP-ALIVE.
Sinon vous upgradez JMeter en version dev comme indiqué par Milamber.

Cordialement
Philippe M.
@philmdot


--
Vous recevez ce message, car vous êtes abonné au groupe Google Groupes "JMeter en français".
Pour vous désabonner de ce groupe et ne plus recevoir d'e-mails le concernant, envoyez un e-mail à l'adresse jmeter-fr+...@googlegroups.com.
Pour envoyer un message à ce groupe, envoyez un e-mail à l'adresse jmet...@googlegroups.com.
Visitez ce groupe à l'adresse http://groups.google.com/group/jmeter-fr.
Pour obtenir davantage d'options, consultez la page https://groups.google.com/d/optout.



--
Cordialement.
Philippe Mouawad.




--
Cordialement.
Philippe Mouawad.



Philippe Mouawad

unread,
Sep 2, 2015, 12:33:14 PM9/2/15
to jmet...@googlegroups.com
Le packaging jp@gc a changé en 1.3

Vous devez installer standard en plus d'extra.
Si vraiment il y a un souci il faut le remonter à jmeter plugins.
Quelle est l'erreur? 
avez vous une erreur dans jmeter.log ?

Cdlt
--
Vous recevez ce message, car vous êtes abonné au groupe Google Groupes "JMeter en français".
Pour vous désabonner de ce groupe et ne plus recevoir d'e-mails le concernant, envoyez un e-mail à l'adresse jmeter-fr+...@googlegroups.com.
Pour envoyer un message à ce groupe, envoyez un e-mail à l'adresse jmet...@googlegroups.com.
Visitez ce groupe à l'adresse http://groups.google.com/group/jmeter-fr.
Pour obtenir davantage d'options, consultez la page https://groups.google.com/d/optout.


--
Cordialement.
Philippe Mouawad.



Jean-Marie Markowski

unread,
Sep 15, 2015, 11:06:18 AM9/15/15
to JMeter en français
Bonjour à tous,

Avant tous, je vous remercie beaucoup pour votre aide.

Je reviens à vous avec un feedback concernant ces erreurs constatées.
En effet, après plusieurs tentatives d'exécutions du scénario , j'ai remarqué qu'il y avait beaucoup d'erreurs de type "Connection Reset".
Des collègues ont monitoré et il ont eu comme erreur sur le WebServer un erreur "MaxClients settings".

Donc, j'en conclu que les WebServer sont été saturés avant d'envoyer les requêtes aux serveurs applicatifs et ensuite vers la DB.

Des reconfigurations sont en cours et je reviendrai à vous avec d'autres informations.

Par ailleurs, je me demande si la modification de ce type d'erreurs dans la nouvelle version JMeter 2.14 ne rique pas d'oculter ce problème.
En effet, dans ce cas, il s'agit bien d'un problème lié à l'infrastructure et non à JMeter.

Cordialement,

Philippe Mouawad

unread,
Sep 15, 2015, 3:27:38 PM9/15/15
to jmet...@googlegroups.com
Bonjour,
Content de voir que JMeter vous a permis de diagnostiquer un problème applicatif.
Et merci de nous avoir fait le retour.

Concernant la 2.14, pas de risque d'occulter le problème, nous n'avons fait que fixer un bug si le keep-alive timeout n'était pas envoyé par le serveur et que la config JMeter n'avait pas positionné idle-timeout.

Même avec la 2.14 vous devriez reproduire le phénomène.
Avez-vous pu l'utiliser ?

Merci
Cdlt
@philmdot

--
Vous recevez ce message, car vous êtes abonné au groupe Google Groupes "JMeter en français".
Pour vous désabonner de ce groupe et ne plus recevoir d'e-mails le concernant, envoyez un e-mail à l'adresse jmeter-fr+...@googlegroups.com.
Pour envoyer un message à ce groupe, envoyez un e-mail à l'adresse jmet...@googlegroups.com.
Visitez ce groupe à l'adresse http://groups.google.com/group/jmeter-fr.
Pour obtenir davantage d'options, consultez la page https://groups.google.com/d/optout.



--
Cordialement.
Philippe Mouawad.


Jean-Marie Markowski

unread,
Sep 16, 2015, 3:08:52 AM9/16/15
to JMeter en français
Bonjour, 

En ce qui concerne le JMeter 2.14, j'ai un petit problème.
En effet, comme vous le savez, je recréé une nouvelle version du Bundle JMeter For Windows.
En cours de test, lorsque j'ajoute tous les Plug-in 1.3.0, je n'ai plus accès dans JMeter au menu bouton droit de la souris.
Même lorsque j'utilise uniquement le module standard.

J'ai remonté l'info dans l'autre forum avec une copie des log de démarrage.

Reply all
Reply to author
Forward
0 new messages