Articles avec le tag ‘méthodologie’

Présentation d’AppDynamics

logoappdynamics
Dans le milieu de la performance,  les principes « Ne devinez pas, mesurez », « Diagnose before Cure ! », « Measure, Don't Guess ! » sont de rigueur.

Il existe même un anti pattern nommé « Shot in the dark ».

Tous ces principes nous disent qu’il est important de superviser notre environnement de test lors de la réalisation d’un test de performance. Et pas seulement lors d’un test de performance, car comme tout test, ce n’est qu’une simulation avec ses imperfections (couverture de test incomplète, plate-forme de test non iso prod, etc.) et donc il est important de superviser son environnement de production sous peine de mauvaises surprises.

Pour réaliser cette tâche, de nombreux outils existent comme Nagios, Zabbix, Quest FogLight, Centreon, etc.

Plus particulièrement les APM (Application Performance Monitoring).

Dans le monde Java, les plus connus de nos jours sont Compuware Dynatrace, NewRelic et AppDynamics.

Dans cet article nous allons voir une partie des possibilités offertes par AppDynamics pour la partie Java.

Lire la suite de cette entrée »

Les tests de charge à caractère technique (robustesse) sont ils importants ?

Introduction

Mettons-nous d’abord d’accord sur la définition de « tests de charge à caractère technique (ou test de robustesse) ».
Il s’agit de tester un système en mode dégradé : ralentissement de l'application, un des serveurs est non disponible, réseau saturé, panne mémoire, disque plein, réseau défaillant, etc. sous forte charge.
Maintenant que nous sommes d’accord, commençons.

Votre application a réussi tous les tests, qu’ils soient unitaires, d’intégration, fonctionnels ou de charge et nous voilà enfin prêts à la mettre en production.
Mais vous vous posez toujours des questions sur comment va réagir votre application en cas de fonctionnement dégradé.

Les délais font que l’application est mise en production sans la réalisation de ces tests.
Deux jours plus tard, après une campagne de publicité qui vous a apporté beaucoup de nouveaux utilisateurs, on vous réveille à deux heures du matin pour que vous veniez d’urgence au bureau, car l’application est dans un état instable.
Dommage, car des tests de robustesse auraient sûrement pu vous éviter ce désagrément.

Vous ne me croyez pas, vous avez raison.

Et si je vous dit que lors de mes missions j'ai rencontré :

  • des crashs de l'application à cause d'un consommateur JMS non démarré ;
  • des crashs de l'application à cause d'un load balancer mal configuré ;
  • des problèmes de répartition de charge dans un cluster d'Apache ActiveMQ après l'arrêt/relance d'un noeud.

Toujours pas. Et si je vous dit que ces problèmes sont arrivés dans des grosses structures sur des projets plus ou moins gros et avec des gens compétents ?

Bon vous ne me laisser plus le choix, nous allons voir un exemple qui vous prouvera (enfin je l'espère) l'importance de ces types de tests.

Mais avant cela comment allez vous reproduire ce bug qui est arrivé en environnement de production sur votre environnement de test ?

Avec un test de robustesse bien sûr 😉

Lire la suite de cette entrée »

Voici la présentation « Gestion des index SQL : Soyez AWARE ! » présentée au Poitou Charentes JUG


Pour ceux qui n'ont pas pu venir au Poitou Charentes JUG , voilà ma présentation « Gestion des indexs SQL : Soyez AWARE ! ».

Vous y apprendrez les bonnes pratiques sur les index SQL.
Pour cela, nous aborderons un minimum de théorie nécessaire, suivie d’un quiz afin de découvrir les bonnes pratiques d’utilisation des index.

Nous finirons par voir comment mettre en place tout cela dans un contexte applicatif.

Lire la suite de cette entrée »

Pourquoi faire attention à l’overhead

1 - Introduction

Lors d'une campagne de test de charge et de performance, ou d'une mise en place de supervision de la production , nous sommes amenés à mettre en place des outils de monitoring qui peuvent rapidement être intrusifs.

Le problème est que lorsqu'on mesure un système, on change le contexte de celui-ci et les mesures prises peuvent être faussées.

Pour éviter cela, il faut que les mesures perturbent le moins possible le système mesuré.

Dans cet article nous allons nous concentrer sur la mesure et la répartition de la consommation processeur d'un programme Java. Cela nous permettra de comparer plusieurs outils et de trouver des solutions afin de limiter le problème d'overhead.

Lire la suite de cette entrée »

Interview de Milamber – développeur et membre PMC du projet Apache JMeter

Présentation

Bonjour Milamber, peux-tu te présenter rapidement ?

Du point de vue d'Apache JMeter, je suis développeur et membre PMC. Ce travail est fait sur mon temps libre (soir & weekend). La semaine, je travaille comme expert et consultant informatique.
J'habite au Maroc depuis 10 ans (Casablanca puis Rabat), où je travaille dans la prestation de service informatique pour quelques grands comptes marocains et certains français (via des missions en France).
J'ai commencé à travailler en France dans une société 'Internet' en tant que développeur et administrateur systèmes, avant l'époque des start-up. Et donc j'ai acquis pas mal d'expériences et de retours d'expériences dans les technologies autour de l'Internet.
Ce qui m'amène sur mes occupations actuelles : Architecte technique web/j2ee et expert performances/sécurité.
Lire la suite de cette entrée »

Pourquoi faire attention au volume du jeu de données en base

1. La source du problème

Lorsqu'on développe une application, pour gagner du temps on travaille souvent avec des jeux de données réduits.
En dehors de la question de pure "facilité", cela permet également de :

  • réduire le temps d’exécution des requêtes SQL ;
  • réduire le temps de chargement de la sauvegarde de la base ;
  • avoir toute l'application sur son poste de travail ;

Lire la suite de cette entrée »

Anticiper la performance de vos applications


Cet article vous rappelle quelques sujets étroitement liés aux problématiques de performance de vos applications d'entreprise.
Ceci n'est pas un roadbook ni une bible sur les process et les outils liés à la performance, mais avant tout un retour d'expérience sur les lacunes constatées en missions dans les équipes projet.

 

Savoir anticiper la performance de vos applications

Encore aujourd’hui, nombreux sont les chefs de projet, directeurs de projet voire même responsables de pôle études & développements qui relèguent au second plan la performance de leurs applications.

Lire la suite de cette entrée »

Mots-clés
RSS Feed