Archive for the ‘Performance’ Category.

Tutoriel sur l’audit de performances d’une application en Java EE

Un petit billet pour vous inviter à découvrir ce tutoriel de Antonio Gomes Rodrigues, dont le sujet est l’audit de performance d’une application en Java EE.

C’est un tutoriel extrêmement complet qui couvre de nombreux domaines qui sont liées à la performance en général, et plus particulièrement sur une application J2EE.

Le tutoriel couvre les procédures de test (préparation, principaux métrics), le test de charges avec JMeter, et une dernière partie sur l’identification et la correction des problèmes. On a donc ainsi, l’entrée, le plat et le dessert pour optimiser nos applications J2EE.

La section sur l’identification et la correction des problèmes est particulière exhaustive sur les problèmes que l’on peut en effet rencontrer dans une application. Elle sera très utile pour faire une check-list de vérification si un souci arrive sur son application.

Voilà, c’est à mettre dans votre marques-pages.

./

Tomcat Optimisation & Performance Tuning : présentation de Mark Thomas

Un petit billet pour vous parler de cette présentation de Mark Thomas, un committer sur Apache Tomcat, qui a fait une très bonne présentation sur les optimisations et les performances de Tomcat, dans le cadre des rencontres Spring.

La vidéo complète de sa présentation est disponible (46 min, en anglais), c’est extrêmement intéressant et enrichissant. La présentation PDF est téléchargeable également.

Je vous recommande au moins un parcours de la présentation pour voir le « process », la démarche à suivre pour tout problème de performance.

Sa présentation parle de Tomcat, mais certaines parties sont adaptables pour d’autres serveurs d’applications comme Jboss (bien sur), WebSphere, etc.

./

JMeter : Pourquoi exécuter son test de charges en mode non-gui (sans interface graphique) ?

JMeter dispose de deux modes de fonctionnement, un mode GUI et un non-GUI, « GUI » signifiant Graphical User Interface, c’est-à-dire un mode de fonctionnement avec une interface graphique utilisateur qui permet de créer, éditer un script et lancer un test de charges et autres choses. Le mode non-GUI ne permet pas de manipuler un script, mais simplement de lancer le script de test de charges.

Pourquoi ce mode non-GUI ? Parce qu’en mode GUI, JMeter peut être gêné par la gestion du ‘graphisme‘ pendant qu’il est en train d’exécuter un test de charges. Et cela peut avoir un impact sur la qualité des résultats du tir.

En effet, sur le poste JMeter, la gestion du mode graphique impacte : Continue reading ‘JMeter : Pourquoi exécuter son test de charges en mode non-gui (sans interface graphique) ?’ »

Bilan année 2008

En fin d’année, il est de coutume de faire le bilan. Je vous propose donc de partager différents points de vue « bilan de fin d’année », le tout étant totalement subjectif, non-exhaustif et basé sur mon seul vécu. Continue reading ‘Bilan année 2008’ »

[Tutorial] Effectuer un test de charge distribué (distributed testing) avec JMeter

Cela fait longtemps que j’aurais dû le faire, et bien c’est fait.

Voici donc un petit tutoriel qui donne la démarche pour faire un test de charge distribué avec JMeter.

L’intérêt principal pour ce type de test, est que la charge à produire par JMeter pour simuler ses utilisateurs virtuels est répartie sur plusieurs machines JMeter. Cela évite ainsi les problèmes de saturation de bande passante du JMeter, de surcharge CPU, mémoire, etc quand vous simulez un très grand nombre d’utilisateurs.

Ce tutoriel donne aussi quelques bons conseils pour réaliser ce type de tir.

Bons tests !

./

Création d’un groupe de discussion sur JMeter en français

Un billet pour vous annoncer la création d’un groupe de discussion sur JMeter et les sujets associés sur Google Groups.

Je suis l’initiateur du groupe, vous pouvez vous inscrire afin de participer au démarrage du groupe.

Ce groupe espère aider à l’assistance à l’utilisation de JMeter (tests de charges, stress, fonctionnel, performances, etc), les techniques (ou astuces) sur son utilisation et également les méthodologies de tests ainsi que l’analyse des résultats.

L’idée étant de progresser ensemble dans l’utilisation de JMeter.

L’adresse du groupe est : jmeter-fr@googlegroups.com, les archives sont lisibles par tout le monde, et il faut être membre pour envoyer des messages.

En espérant que ce groupe vivra longtemps et qu’il sera actif ! On compte sur vous !

Google Groupes
Abonnement au groupe JMeter en français
E-mail :

Visiter ce groupe

Livre eBook Performance Testing Guidance for Web Applications par Microsoft (en anglais)

Voici un très bon ebook en anglais, il s’agit d’un guide sur les tests de performances, proposé en téléchargement et gratuitement par Microsoft via son site CodePlex.

(titre en anglais : Performance Testing Guidance for Web Applications)

C’est un livre de 221 pages, découpé en 8 parties (pour un total de 18 chapitres) :

  1. Une introduction aux tests de performances, qui vous donnera un aperçu des différents types de tests de performances, les concepts clés et le vocabulaire utilisé.
  2. Une approche modèle sur le test de performance, à travers 7 macro activités. Cette partie montre également comment intégrer les tests de performances dans les environnements Agile et CMMI.
  3. Identification de l’environnement de test, qui montre comme collecter les informations nécessaires sur un projet à tester, allant des architectures systèmes au activités utilisateurs, etc. Continue reading ‘Livre eBook Performance Testing Guidance for Web Applications par Microsoft (en anglais)’ »

Compression HTTP, ou comment réduire le temps réseau dans les performances d’une application

Avec JMeter on peut faire des tirs de performances (et d’autres choses) pour une application Web. Pour qu’une application soit performante, il est préférable qu’elle soit développée judicieusement, mais également qu’elle s’exécute sur un environnement performant. Dans ce dernier, il ne faut pas négliger la composante réseau qui peut souvent devenir un goulet d’étranglement au niveau de l’utilisateur.

En effet, vous allez développer une application hyper véloce, la faire fonctionner sur des serveurs hyper-rapides, mais votre utilisateur au bout de la ligne vous dit que c’est lent…

Vous (re)faites vos tir de charges, vous mesurez les performances, c’est excellent… sur votre réseau local. Vous placez un injecteur chez votre utilisateur final, et là c’est la surprise… c’est lent.

Le diagnostic est rapide : trop d’octets à transférer pour afficher un écran, avec une bande passante trop petite donc lenteurs. Et impossible d’augmenter la bande passante. Que faire ? Continue reading ‘Compression HTTP, ou comment réduire le temps réseau dans les performances d’une application’ »

Petit tutorial sur la jmeterisation d’une requête de tir de charges d’un WebService via SOAP avec JMeter

Tout est dans le titre !

Par curiosité j’ai testé la fonctionnalité de requêtage de JMeter sur les WebServices avec SOAP. Voici un petit tutorial du résultat.

./

Redbooks : Linux Performance and Tuning Guidelines

Linux ayant une place importante dans mon utilisation informatique, il est bien normal d’être à l’affût de bons documents dessus. IBM via son site de publications Redbooks nous propose un excellent document sur les performances et l’optimisation de Linux (il s’agit en réalité d’une mise à jour d’un document déjà sorti en juillet 2007).

Redbooks : Linux Performance and Tuning Guidelines

Ce livre nous propose ainsi une large introduction au fonctionnement interne de Linux au niveau de la gestion des processus, les architectures mémoire (en particulier les différences entre systèmes 32 bits et 64 bits), les systèmes de fichiers (ext3, ext2, etc.), la gestion des entrées / sorties et la gestion du réseaux. C’est extrémement instructif.

La suite est un panorama des outils disponibles sur les distributions Linux pour la supervision et le benchmark. Chaque outil est expliqué, en particulier l’interprétation des données affichées.

Les deux derniers chapitres nous montrent d’une part les méthodes d’identifications des goulots d’étranglements (bootlenecks) au niveau CPU, mémoire, disques et réseaux. Et d’autre part des techniques d’optimisation de sa machine Linux (orienté serveur).

Pour résumé, ce document doit être une référence pour tout bon administrateur système qui s’occupe de serveurs Linux ou tout personne soucieuse (comme moi) des performances des bécanes !

Bon lecture.
./