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:
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.
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 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 ?
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
Partager