Qu'est-ce que le plus grand nombre de threads qui est raisonnable pour exécuter simultanément dans Jmeter?
Je veux utiliser le plus grand nombre possible de threads (pour utiliser moins d'ordinateurs), mais sans faire le goulot d'étranglement pour être dans le client.
- Je dirais que cela dépend de votre matériel...
- Il passe sur tout ce que vous n'avez pas dit de nous: système d'exploitation, le matériel, le serveur de test, le client idem, ... Pas une vraie question.
Vous devez vous connecter pour publier un commentaire.
J'ai utilisé JMeter un peu juste et l'a trouvé n'est pas grande à générer de très haute charge. Sur un processeur à 2 ghz Core 2 Duo avec 2 go de mémoire que vous pouvez raisonnablement s'attendre à environ 100 threads.
Cela étant dit, il est préférable de l'exécuter sur votre matériel afin que le PROCESSEUR du PC n'a pas de pic à 100% - stable à 80%-90% est meilleur, sinon les résultats sont affectés.
J'ai aussi essayé de WAPT 5 - il a rencontré le succès avec+ de 1000 threads à partir du même PC. Il n'est pas libre, mais il est plus utilisable qu'JMeter, mais ne dispose pas de toutes les fonctionnalités.
JMeter peut simuler une Charge très Élevée à condition de l'utiliser.
De ne pas écouter Légendes Urbaines que dire JMeter ne peut pas gérer la charge élevée.
Maintenant, comme pour répondre, il dépend:
votre alimentation de la machine
votre jvm 32 bits ou 64 bits
votre jvm mémoire allouée -Xmx
votre plan de test ( lot de beanshell, post-processeur, xpath ... Signifie beaucoup de cpu)
votre système d'exploitation configuration (réglable)
Gui /non mode graphique
Donc il n'y a pas de réponse théorique, mais à la suite Les Meilleures Pratiques assurera JMeter fonctionne bien.
Noter qu'avec jmeter vous pouvez distribuer la charge à distance par le biais de tests, lire:
Et, finalement, basée sur le cloud de l'essai si cela ne suffit pas.
Lire ceci pour des conseils de réglages:
Lire ce livre pour faire des tests de charge et de l'aide de JMeter correctement.
Le JMeter Wiki rapports de cas où JMeter a été utilisé avec 1000 fils. Je l'ai utilisé avec la plupart des 100 threads, mais les Liens dans le Wiki suggèrent des réductions de ressources je n'ai jamais essayé.
L'un des problèmes que nous avons eu avec l'exécution de JMeter sur Windows XP a Windows XP TCP Limite de Connexion. Limite doit être enlevé afin d'exécuter le JMeter pour poste de travail du plein potentiel
Plus d'infos ici. Autant que je sache, ne s'applique pas à d'autres OS.
J'ai utilisé JMeter depuis 2004 et j'ai lancé beaucoup de tests de charge.
Avec un PC Windows 7 64 bits, 4Go de RAM iCore5.
Je pense que JMeter peut supporter 300 à 400 threads simultanés pour Http (Échantillonneur) protocole avec seulement un "Agrégat Rapport de l'Auditeur", qui écrit dans le fichier journal résultats et minuteries entre les appels de pages.
Pour un grand test de charge, vous pouvez configurer JMeter avec des esclaves (générateurs de chargement) comme ceci
http://jmeter-plugins.org/wiki/HttpSimpleTableServer/
J'ai déjà fait des essais avec 11 PC des esclaves pour simuler 5000 threads.
Je n'ai pas utilisé JMeter, mais la réponse dépend probablement sur votre matériel. Meilleur pari serait d'établir des indicateurs de performance, de deviner le nombre de threads et puis exécutez une recherche binaire comme suit.
Source est Wikipedia.
Nombre jeu de devinettes...
Ce jeu assez simple, commence par quelque chose comme "je pense à un nombre entier compris entre quarante et soixante inclusive, et à vos suppositions, je vais répondre "Haut", " Bas " ou "Oui!" comme pourrait être le cas." En supposant que N est le nombre de valeurs possibles (ici, vingt-et-un en tant que "inclusive", a déclaré), puis à la plupart des questions sont nécessaires pour déterminer le nombre, car chaque question moitiés de l'espace de recherche. Notez que l'une des moins question (itération) est requis que pour l'algorithme général, puisque le nombre est déjà limitée à l'intérieur d'une plage particulière.
Même si le nombre que nous sommes deviner peut être arbitrairement grand, auquel cas il n'y a pas de limite N, on peut encore trouver le nombre à la plupart des étapes (où k est le (inconnu) numéro sélectionné) par trouver une limite supérieure par la répétition de doubler. Par exemple, si le nombre de 11, on pourra utiliser la séquence suivante d'essais pour trouver ça: 1, 2, 4, 8, 16, 12, 10, 11
On pourrait aussi étendre la technique à inclure les nombres négatifs; par exemple, la suite de suppositions pourraient être utilisés pour trouver des -13: 0, -1, -2, -4, -8, -16, -12, -14, -13
Il est de plus en plus dépendante de la nature de l'essai de performance à vous(à la charge, spike, endurance, etc) sur un serveur spécifique (un peu sur le matériel de la dépendance)
Garder à l'esprit autour de ces paramètres
- l'ordinateur client sur lequel vous êtes le ciblage de l'exécution de jmeter, il y aura une certaine quantité de mémoire dans la mémoire allouée, s'assurer d'avoir une bonne répartition de sorte que le script ne fait pas d'erreur. Le plus haut que j'avais exécuté sur jmeter 1500 sur un environnement local ( client - serveur arc), Sur un Web de l'arc, le plus haut que j'avais une course a été fondée sur la Non - exigence fonctionnelle ont été limités à 250 fils,
donc idéalement dépend des types de tests de performance et le style de déploiement et ainsi de suite..
Il n'y a pas le numéro de standard pour cela. Le nombre maximal de threads que vous pouvez générer à partir d'un ordinateur dépend entièrement sur le 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 de la RAM.
De trouver le maximum de threads votre ordinateur peut gérer, vous pouvez préparer un test de l'échantillon et de l'exécuter avec seulement un petit nombre de threads. Ensuite, à chaque cycle d'essai augmenter le nombre de threads progressivement. Au cours de cette vous devez également surveiller le CPU, la RAM, le Disque e/S et e/S Réseau de votre ordinateur. Le moment où l'un de ces proches ou au-delà de 80% (à Nouveau pour vous de décider si près est acceptable pour vous, ou au-delà), qui est le nombre maximum de threads votre ordinateur peut gérer. Pour être sur le côté plus sûr, je voudrais arrêter au numéro lors de l'utilisation des ressources atteint les 70%.
Ça dépend du matériel que vous exécutez sur ainsi que le script. J'ai toujours senti que ce flou est le plus gros problème avec les traditionnels outils de test de charge. Si vous avez un petit budget ($200 ou si vous obtient BEAUCOUP de tests), découvrez mon entreprise le test de charge de service, BrowserMob.
En plus de notre Réel les Utilisateurs du Navigateur (RBUs) qui contrôle milliers sur de véritables navigateurs pour le but de la performance et de test de charge, nous avons aussi traditionnelle des utilisateurs virtuels (VUs). Les Scripts sont écrits en JavaScript et peut faire de diverses HTTP appels.
La raison pour laquelle je la ramène, c'est que j'ai toujours senti que le jeu d'essayer de comprendre comment de nombreux VUs que vous pouvez adapter à votre charge gen matériel est dangereux. C'est tellement facile d'obtenir de mauvais résultats sans s'en rendre compte.
À résoudre que pour BrowserMob, nous avons pris un très prudents sur le nombre de VUs et RBUs par cœur de PROCESSEUR: 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, des cycles CPU sont tellement bon marché qu'il n'a tout simplement pas de sens de faire à la surcharge des machines.