IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Tests et Performance Java Discussion :

Vérifier la performance de mon test [JMeter]


Sujet :

Tests et Performance Java

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    923
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2008
    Messages : 923
    Points : 760
    Points
    760
    Par défaut Vérifier la performance de mon test
    Bonjour,

    Je suis en train de tester la performance d'une API REST, et pour le faire, j'utilise 3 instances JMeter (1 master et 2 slaves).

    Pour vous donner un peu de contexte, j'ai fait un script JMeter avec 2 groupes de threads, et sur chaque groupe j'ai 150 threads. J'ai aussi un "constant throughput timer" dans chaque thread group.

    Voici la ligne de commande que j'utilise pour lancer le test:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ./jmeter -n -t ./script.jmx -l ./samples.csv -e -o ./dashboard -R 127.0.0.1,192.168.1.96,192.168.1.175 -Gthroughput = 900000 -Gduration = 10 -Gvmnb = 3 -G ./API.properties
    Dans cette ligne de commande, le throughput est le throughput total que je vise pour les 3 serveurs (sa valeur est divisée par vmnb, ma 3ème variable, puis chaque serveur fait cette partie du throughput) et duration est la durée du test.

    Dans ce cas, le throughput est constant et devrait être de 900K (300K par serveur) pendant 10 minutes. La période de ramp-up est de 5 minutes (duration / 2)

    Maintenant ma question:

    Si j'ai bien compris, à la fin je devrais avoir 900K * 10 minutes = 9000K échantillons dans mon fichier résultat (par API).

    Sur le tableau de bord de mon JMeter, je n'ai que 200K et 160K échantillons pour chaque URL. même s'il ne réussit qu'à voir le serveur Master (je pense), je suis loin des résultats attendus, non ?

    Nom : JMeter dashboard.JPG
Affichages : 113
Taille : 71,7 Ko

    Est-ce que je n'ai pas compris quelque chose ou peut-être j'ai des problèmes de performance avec mes machines virtuelles, et elles ne sont pas en mesure de fournir le throughput demandé ?

    Je voudrais vous remercier par avance de votre aide,

    Cordialement,
    Marc

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    923
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2008
    Messages : 923
    Points : 760
    Points
    760
    Par défaut
    Bon,

    J'ai fini par trouver une réponse à la question :

    Le Constant Throughput Timer peut uniquement mettre en pause les threads pour limiter les requêtes de JMeter à la valeur donnée. Vous devez donc vous assurer que vous disposez de suffisamment de threads pour produire les requêtes souhaitées. Si votre cible est de 9M requêtes en 10 minutes cela signifie 900k requêtes par minute ou 300k requêtes par minute par VM, ce qui donne 5000 requêtes par seconde. Afin d'avoir 5000 requêtes par seconde avec 150 threads, vous devez avoir un temps de réponse de 0,02 secondes alors que votre temps de réponse moyen est d'environ 1 seconde.

    En supposant ce qui précède, il faudrait utiliser plutôt le Throughput Shaping Timer en combinaison avec le Concurrency Thread Group. Ils peuvent être connectés via la fonction Scheduled Feedback Function afin que JMeter puisse lancer des threads supplémentaires pour atteindre et maintenir la quantité de requêtes défini.

    Voilà, cela sera peut-être utile à quelqu'un d'autre

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Comment optimiser les performances de mon PC ?
    Par Celebrate dans le forum Windows XP
    Réponses: 6
    Dernier message: 16/07/2008, 22h08
  2. Performance de mon code VB
    Par patrick.kori dans le forum VBA Access
    Réponses: 5
    Dernier message: 21/03/2007, 16h51
  3. Vérifier les performances des disques
    Par vbcasimir dans le forum Administration système
    Réponses: 4
    Dernier message: 15/03/2007, 17h25
  4. Faire attendre mon test
    Par nebule dans le forum Langage
    Réponses: 5
    Dernier message: 13/11/2006, 11h59
  5. Mon test sur la date ne marche pas
    Par dachir dans le forum Access
    Réponses: 7
    Dernier message: 12/08/2006, 10h23

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo