Article JMeter sur l’élément HTML Link Parser
Et voilà l’article sur le composant HTML Link Parser de JMeter. Comme promis.
Cette page vous permettra de mieux comprendre cet élément, et j’espère de l’utiliser dans vos scénarios.
./
JMeter (surtout) mais aussi l'Informatique, Internet, etc.
Archive for the ‘Performance’ Category.
Et voilà l’article sur le composant HTML Link Parser de JMeter. Comme promis.
Cette page vous permettra de mieux comprendre cet élément, et j’espère de l’utiliser dans vos scénarios.
./
Pour les « grands » tirs de charges dont l’objectif est de tester une nouvelle application J2EE (ou JEE) avant sa mise en production, et afin d’éviter les crashs le jour du lancement, on mobilise en général une équipe des différents « corps de métier » informatiques.
On aura ainsi :
Tout cela fait beaucoup de monde, on ajoutera en général un responsable général, chargé entre autre de synchroniser toutes les actions, et donner le GO du lancement.
Une fois que le tir lancé et terminé, l’expérience montre que c’est en général du coté du serveur d’applications J2EE que les problèmes sont visibles. Où s’ils ne sont pas visibles, on pense à lui en premier car c’est lui qui supporte l’application. Alors quand c’est vous le responsable de la supervision du cluster de serveurs d’applications, tout ce beau monde se retourne vers vous pour avoir l’explication, le comment du pourquoi, afin de comprendre la raison du non succès du tir de charge…
Pourtant vous avez fait une configuration des serveurs d’applications clustérisés aux petits oignons :
Alors avec ce tunning de folie, difficile de comprendre pourquoi le serveur d’applications souffre lors du tir de charges… Continue reading ‘Tir de charges : Quand les problèmes ne viennent pas du serveur d’applications’ »
JMeter est un outil qui sait faire des petites choses sympas. La supervision d’un serveur Apache Tomcat par JMeter en fait partie.
JMeter à travers la servlet de statut fournie avec le serveur Tomcat peut afficher sous forme d’un graphique le nombre d’unités d’exécution actives, la mémoire JVM utilisée, et la charge (calculée) du serveur Tomcat. JMeter peut même le faire sur plusieurs serveurs Tomcat en même temps.
Voici donc un petit tutorial pour découvrir cette fonctionnalité de JMeter. Pour cela, on utilise un serveur Tomcat version 6.0 et un JMeter 2.3.
Bonne découverte.
Et voilà un nouveau tutorial sur JMeter. Il s’agit cette fois d’exécuter un tir de charges avec JMeter en utilisant des paliers de charges, c’est-à-dire que pour un même scénario, on va d’abord simuler une charge de N utilisateurs pendant une certaine période, puis après une période de montée en charges, nous simulerons N x 2 utilisateurs.
L’avantage d’un scénario par paliers est de permettre d’observer le comportement d’une application pendant une période « normale » et une période de « stress ».
Pour mieux voir son comportement, nous allons nous aider de Microsoft Access pour exploiter les temps de réponses enregistrés pendant le tir de charges, et ainsi générer rapidement un graphique. Ce dernier permettra une meilleure analyse du comportement, et sera beaucoup plus « sexy » dans un rapport de tir de charges.
Prêt à partir pour de nouvelles aventures JMeter ? Oui, alors Go sur cette page.
Bon… j’ai eu l’impression de découvrir l’informatique cette semaine. J’ai compris, ou plutôt appris qu’un processeur Intel Core 2 Duo possède les extensions EM64T afin de fonctionner en mode 64 bits au lieu du mode 32 bits.
Avant, je pensais que les processeurs Intel à part les Itaniums étaient des processeurs 32 bits seulement. Et que AMD avait développé ses propres processeurs 64 bits (les fameux AMD 64 bits). Ensuite, on avait Microsoft qui a mis en place une version 32 bits de Vista et une version 64 bits de Vista pour répondre à Intel et à AMD. Pour finir, l’acheteur avait le choix entre, soit un ordinateur Intel et donc un Windows Vista 32 bits, ou soit un ordinateur AMD avec un Windows Vista 64 bits.
J’avais même la vision qu’un Windows Vista 64 bits était moins ‘bien’ qu’un Vista 32 bits car c’était associé dans mon esprit à un prix d’achat d’ordinateur moins cher (les processeurs AMD étant moins chers que ceux d’Intel). (Et aussi du certainement à l’effet « Oracle » qui dit que si on prend la base de données Oracle on fait toujours le bon choix de base de données malgré son prix excessif).
Rendons à César, ce qui est à César.
Continue reading ‘Découverte de la semaine : Un Core 2 Duo est 64 bits !’ »
Vous avez développé une application JEE, et depuis son passage en production au moins une fois par jour il y a une erreur Java « OutOfMemoryError ». La première réaction a été de dire : mauvaise configuration de la taille maximale de la JVM… vous avez préconisé 1Go de Max Heap Size, cela n’a pas fonctionné, l’erreur OOME arrive encore… Alors on est passé à 2Go… Toujours l’erreur d’OOME… Aie, et que faire…
Quand vous êtes à ce point, vous pouvez être certain que vous avez une fuite de mémoire (memory leaks) quelque part. Oh, ce n’est pas que vous êtes un mauvais développeur
et que vous ne savez pas bien gerer la mémoire, en effet, parfois un problème de fuite de mémoire peut survenir à cause d’une fonctionnalité activée du serveur d’applications de production et qui rentre en « conflit » avec une brique de l’application. (Je citerai un exemple vécu : le cache (activé) JDBC de la source de données WebSphere 5.1 et un framework maison de mapping O/R)
Quand on a un problème d’OutOfMemory, on commence souvent par activer le mode verbeux du Garbage Collector (GC), c’est une très bonne idée, cela permet d’avoir une petite idée sur le déroulement du problème de mémoire (on peut utiliser l’outil Extensible Verbose Toolkit d’IBM pour ce travail, cf références). Cependant c’est insuffisant pour trouver la cause du problème. Quelques recherches sur Internet vous apprennent qu’il est possible d’avoir une image de la mémoire Java avec la génération d’un « heap dump », ensuite il suffit de l’analyser pour trouver la cause de la fuite de mémoire. Facile à écrire, mais dur à faire…
Continue reading ‘SAP Memory Analyzer : voilà un vrai outil pour analyser des Heap Dump Java !’ »