Quel est le nombre le plus élevé de threads qu’il est raisonnable d’exécuter simultanément dans Jmeter ?

StackOverflow https://stackoverflow.com/questions/765101

Question

Je souhaite utiliser le plus grand nombre de threads possible (pour utiliser moins d'ordinateurs) mais sans créer de goulot d'étranglement dans le client.

Était-ce utile?

La solution

Je l'ai utilisé JMeter un peu juste et trouvé est pas grande à générer la charge très élevé. Sur un 2Ghz Core2 Duo avec 2 Go de mémoire, vous pouvez raisonnablement attendre environ 100 threads.

Cela étant dit, il est préférable de l'exécuter sur votre matériel afin que la CPU du PC n'atteint son maximum à 100% -. Une écurie de 80% -90% est le mieux sinon les résultats sont affectés

J'ai aussi essayé WAPT 5 - il a couru avec succès, plus de 1000 fils de la même PC. Il est gratuit, mais il est plus utilisable que JMeter mais ne dispose pas de toutes les fonctionnalités.

  

réponse Périmé depuis au moins la version 2.6 voir https://stackoverflow.com/a/11922239/460802 pour plus à une date.

Autres conseils

JMeter peut simuler une charge très élevée à condition que vous l'utilisiez correctement.

N'écoute pas Légendes urbaines cela dit que JMeter ne peut pas gérer une charge élevée.

Maintenant, pour la réponse, cela dépend de :

  • la puissance de votre machine

  • votre jvm 32 bits ou 64 bits

  • votre mémoire allouée par JVM -Xmx

  • votre plan de test (beaucoup de beanshell, post processeur, xpath...Cela signifie beaucoup de processeur)

  • la configuration de votre système d'exploitation (réglable)

  • Mode Gui/non-GUI

Il n'y a donc pas de réponse théorique mais suivante Les meilleures pratiques garantira que JMeter fonctionne bien.

Notez qu'avec jmeter, vous pouvez répartir la charge via des tests à distance, lisez :

Et enfin, utilisez des tests basés sur le cloud si cela ne suffit pas.

Lisez ceci pour obtenir des conseils de réglage :

Lis ça livre pour effectuer des tests de charge et utiliser correctement JMeter.

Le Wiki JMeter cas de rapports où JMeter a été utilisé avec jusqu'à 1000 threads. Je l'ai utilisé avec au plus 100 fils de discussion, mais les liens dans le Wiki propose des réductions de ressources Je ne ai jamais essayé.

L'un des problèmes que nous avions avec l'exécution JMeter sous Windows XP était la limite de connexion TCP Windows XP. Limite doit être retirée afin d'exécuter l'utiliser JMeter à son plein potentiel de poste de travail Plus d'infos ici . Autant que je sache, ne pas appliquer à d'autres OS.

je JMeter depuis 2004 et je lançais beaucoup de tests de charge.

Avec PC Windows 7 64 bits RAM 4Go iCore5.

Je pense que JMeter peut supporter 300 à 400 threads simultanés pour Http protocole (Sampler) avec un seul "Rapport complet Listener" qui écrit dans les résultats du fichier journal et minuteries entre les pages d'appel.

Pour un grand test de charge, vous pouvez configurer JMeter avec des esclaves (générateurs de charge) comme celui-ci http://jmeter-plugins.org/wiki/HttpSimpleTableServer/

Je l'ai déjà fait des tests avec 11 esclaves PC pour simuler 5000 threads.

Je ne l'ai pas utilisé JMeter, mais la réponse dépend probablement de votre matériel. Le meilleur hôtel pourrait être d'établir des mesures de performance, deviner le nombre de threads, puis exécutez une recherche binaire comme suit.

Source était Wikipedia.

Nombre jeu de devinettes ...

Ce jeu assez simple commence quelque chose comme « Je pense à un nombre entier compris entre quarante et soixante inclus, et à vos suppositions, je vais répondre « High », « Low » ou« Oui! comme cela pourrait être le cas « . En supposant que N est le nombre de valeurs possibles (ici, vingt et un comme « inclusive » a été déclaré), puis à la plupart des questions sont nécessaires pour déterminer le nombre, étant donné que chaque question divise par deux l'espace de recherche. Notez que moins une question (itération) est nécessaire que pour l'algorithme général, puisque le nombre est déjà contraint de se situer dans une plage particulière.

Même si le nombre que nous devinons peut être arbitrairement grand, dans ce cas, il n'y a pas N limite supérieure, on peut encore trouver le numéro dans la plupart des étapes (où k est le (inconnu) numéro sélectionné) par la première conclusion une borne supérieure par doublement répétée. Par exemple, si le nombre était 11, on peut utiliser la séquence suivante pour des suppositions trouver: 1, 2, 4, 8, 16, 12, 10, 11

On pourrait également étendre la technique d'inclure des nombres négatifs; par exemple les hypothèses suivantes pourraient être utilisées pour trouver -13: 0, -1, -2, -4, -8, -16, -12, -14, -13

Il est plus dépendant du type de tests de performance que vous faites (charge, pointe, endurance, etc.) sur un serveur spécifique (un peu sur la dépendance matérielle)

Gardez à l'esprit autour de ces paramètres - la machine client sur lequel vous ciblez la course de jmeter, il y aura une certaine quantité de mémoire allouée tas, assurez-vous d'avoir une allocation saine afin que le script ne pas l'erreur. Le plus élevé que je courais sur jmeter était 1500 sur un environnement local (client - arc serveur), sur un arc Web, le plus haut que j'ai eu une course était fondée sur des exigences fonctionnelles non-étaient limitées à 250 fils,

il dépend idéalement sur les types de style tests et le déploiement des performances et ainsi de suite ..

Il n'y a pas le numéro standard pour cela. Le nombre maximal de threads que vous pouvez générer à partir d'un ordinateur dépend entièrement du matériel de l'ordinateur et le système d'exploitation. Le système d'exploitation par défaut occupe certaine quantité de CPU et la RAM.

Pour les threads maximum de votre ordinateur peut gérer, vous pouvez préparer un test de l'échantillon et l'exécuter avec seulement quelques fils. Ensuite, à chaque cycle de test augmenter le nombre de threads progressivement. Au cours de cela, vous devez également surveiller la CPU, RAM, disque E / S et E / S réseau de votre ordinateur. Le moment l'un de ces atteindre près ou au-delà de 80% (Encore une fois pour vous de décider si près est correct pour vous ou au-delà), qui est le nombre maximal de threads votre ordinateur peut gérer. Pour être du côté plus sûr je cesserais au numéro lorsque l'utilisation des ressources atteint 70%.

Il va dépendre du matériel que vous exécutez sur ainsi que le script sous-jacent. Je me suis toujours senti que ce manque de netteté est le plus gros problème avec des outils de test de charge traditionnels. Si vous avez un petit budget (200 $ ou vous fait beaucoup de tests), consultez le , BrowserMob.

En plus de nos utilisateurs réels du navigateur (RBU) qui contrôlent des milliers sur les navigateurs actuels en vue de la performance et les tests de charge, nous avons aussi des utilisateurs virtuels traditionnels (UEV). Les scripts sont écrits en JavaScript et peuvent faire différents appels HTTP.

La raison pour laquelle je l'amener est que je me sentais toujours que le jeu d'essayer de savoir combien VUs vous pouvez adapter à votre charge gen matériel est dangereux. Il est si facile d'obtenir de mauvais résultats sans en rendre compte.

Pour résoudre ce pour BrowserMob, nous avons pris une approche extrêmement conservatrice sur le nombre de VUs et RBU par cœur de CPU: pas plus de 1 navigateur ou 50 threads par cœur de processeur, et parfois beaucoup moins. Dans le monde de l'informatique en nuage, les cycles de CPU sont si pas cher qu'il ne fonctionne tout simplement pas de sens pour essayer de machines de surcharge.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top