Ajouter la fonctionnalité de Pacing d'itération

80 views
Skip to first unread message

Vincent Daburon

unread,
Apr 15, 2020, 10:58:29 AM4/15/20
to JMeter en français
Bonjour,
Depuis 3 ans j'utilise beaucoup la notion de pacing d'une itération pour facilier la modélisation de la charge et aussi car c'est bien pratique quand on fait des montées en charge avec plusieurs plateaux.

La notion de pacing d'itération correspond au temp minimum avant de faire l'itération suivante.
Ex :
Les différents appels et attentes prennent par exemple 45 sec
Le pacing peut être à 60 sec, et donc l'attente dynamique sera de 15 sec pour atteindre la pacing de 60 sec dans le 1er cas..
Si la durée des différents appels et attentes prennent 50 sec alors l'attente sera de 10 sec.
Si la durée des différents appels et attentes prennent 65 sec alors l'attente sera de 0 sec car on a dépassé les 60 sec.

Je me demande si ajouter un Timer Pacing Iteration serait facile à ajouter ?

Il faut avoir l'heure précise de début de l'itération, je ne pense pas que JMeter offre cette fonctionnalité nativement ?
Est ce que cette heure d'itération existe dans les différents Thread Groups ? (ceux de JMeter Plugins : jp@gc - Stepping Thread Group, jp@gc - Ultimate Thread Group ...) ?

Je vois un composant dédié ou une modification du flow control action :
Pacing for one iteration
ou
Pacing for one Thread loop

flow_control_action_parcing_1_iteration.png

Qu'en pensez vous  ?

Cordialement
Vincent DAB.


j...@europe.com

unread,
Apr 15, 2020, 11:52:49 AM4/15/20
to jmet...@googlegroups.com, "JMeter en français"
Bonjour,
 
Le pacing , c'est le temps de pause entre 2 transactions sans inclure le temps de traitement applicatif et c'est exactement ce que propose déjà le "Flow Control Action" avec le champ Pause : -1 pour la proposition.
 
 
Sent: Wednesday, April 15, 2020 at 4:58 PM
From: "Vincent Daburon" <vdab...@gmail.com>
To: "JMeter en français" <jmet...@googlegroups.com>
Subject: [JMeter-fr] Ajouter la fonctionnalité de Pacing d'itération
--
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.
Cette discussion peut être lue sur le Web à l'adresse https://groups.google.com/d/msgid/jmeter-fr/884ddf19-f875-47b8-88d2-05c0167720b5%40googlegroups.com.

Vincent Daburon

unread,
Apr 16, 2020, 2:14:16 AM4/16/20
to JMeter en français
Bonjour,

Le Pacing est le temps entre le début de l'itération et l'itération suivante pour un thread.

Il ne s'agit pas d'attendre entre 2 samplers qui correspond à la pause du Flow Control Action.

Je vois le pacing comme le temps minimum entre le début de l'itération d'un thread et la durée du pacing.

Généralement, on place le pacing comme étant le dernier sampler d'un thread group.

L'avantage du pacing est que si la durée des appels varie la durée du pacing est constante.
Si la somme des appels et des attentes varie et la durée d'attente pour atteindre la valeur du pacing est dynamique.

Ex : Si la somme des durées des appels et des attentes depuis le début de l'itération est de 45 sec et que la durée du pacing (depuis le début de l'itération) est 60 sec alors l'attente dynamique sera de 15 sec.

Cette notion de pacing existe dans les autres outils de performance et elle est très pratique.
D'ailleurs Octoperf vient de rajouter ce pacing dans la nouvelle version.

Cordialement
Vincent DAB.

Philippe Mouawad

unread,
Apr 16, 2020, 2:20:22 AM4/16/20
to jmet...@googlegroups.com
Bonjour,
Est-ce que cela ne devrait pas être configuré au niveau du thread group ?

Le Flow Control Action ne me semble pas le bon élément car avec un « Start Next Thread Loop » sur erreur il serait court-circuité.

Je pense que c’est effectivement très intéressant à ajouter.

Peut-être devriez-vous soulever la question sur la mailing list de dev de jmeter?

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+unsubscribe@googlegroups.com.


--
Cordialement.
Philippe Mouawad.



j...@europe.com

unread,
Apr 16, 2020, 4:48:11 AM4/16/20
to jmet...@googlegroups.com, "JMeter en français"
Bonjour,
 
Beaucoup de confusion dans les définitions métiers , on est bien sur des définitions et non pas des notions, ni sur des visions... souvent mal interprétées à partir des traductions automatiques.

Le Constant Throughput Timer correspond déjà à cette fonctionnalité.

Chaque outil a ses propres spécificités et ses particularités : c'est d'ailleurs ce qui en fait la ou leurs forces.

N'hésitez pas à approfondir vos connaissances si vous avez du temps en ce moment en regardant et surtout en testant tous les timers disponibles depuis très longtemps avant de vouloir faire des modifications : privilégier plutôt la correction des bugs plutôt que l'introduction de "nouvelles" fonctionnalités déjà existantes au risque d'introduire davantage de bugs.

Les tests de non regression après l'introduction de nouvelles fonctionnalités sont tout aussi importants et JMeter n'y échappe pas et malheureusement on a trop souvent tendance à négliger cette phase de test...
 
Bien Cordialement.
 
Sent: Thursday, April 16, 2020 at 8:14 AM

From: "Vincent Daburon" <vdab...@gmail.com>
To: "JMeter en français" <jmet...@googlegroups.com>
Subject: [JMeter-fr] Re: Ajouter la fonctionnalité de Pacing d'itération
--

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.
Cette discussion peut être lue sur le Web à l'adresse https://groups.google.com/d/msgid/jmeter-fr/95005e6e-ba6a-4eb9-bae5-0467696ec861%40googlegroups.com.

Antonio Gomes Rodrigues

unread,
Apr 16, 2020, 6:58:46 AM4/16/20
to JMeter en français
Bonjour,

J'ai répondu sur la mailing list, mais comme déjà dit on peut très bien utiliser "Precise Throughput Timer" ou "Constant Throughput Timer"

Après je suis d'accord que lorsqu'on vient de Neoload ou Loadruner, ça fait un peu bizarre
Bonjour,
 
Pour vous désabonner de ce groupe et ne plus recevoir d'e-mails le concernant, envoyez un e-mail à l'adresse jmet...@googlegroups.com.

Vincent Daburon

unread,
Apr 16, 2020, 9:39:05 AM4/16/20
to JMeter en français
Bonjour,

Le "Constant Throughput Timer" fonctionne mal avec le récupération des ressources automatiquement par JMeter et bien avec les redirections.
Il ne fonctionne pas non plus avec des montées en charge par plateau.

Le Pacing d'une itération est nettement plus simple pour les montées en charge avec plusieurs plateaux de charge.

Active_Threads_ALL_Over_Time.png



Un schéma pour expliquer le Pacing d'une itération.


schema_pacing_v1.png



La durée du Pacing est constant par une itération d'un thread.

Si on double le nombre de threads, la durée du Pacing est toujours la même et normalement, la cadence horaire double.


C'est plus facile pour répondre est ce que l'application supporte 1000 transactions métiers par heure ou bien 1000 itérations/h sur le 2eme plateau.



Cordialement
Vincent DAB.

Antonio Gomes Rodrigues

unread,
Apr 16, 2020, 10:11:56 AM4/16/20
to JMeter en français
Salut,

Pour la récupération des ressources automatiquement je ne l'utilise plus et donc je ne me prononcerais pas.

Après pour les plateaux il y a plusieurs moyen. De même pour définir un nombre de transaction/h ou itérations/h

Mais avoir du pacing permettrait de faciliter le passage de Neoload/Loadruner à JMeter plus facilement
Reply all
Reply to author
Forward
0 new messages