La supervision facile avec JMXTrans, collectd et Graphite

1 - Introduction

jmxUne des étapes d’une campagne de test de charge est de récupérer un certain nombre de métriques.
Plusieurs solutions sont possibles. L’une d’elles dans le monde Java, est d’utiliser JMX pour récupérer un certain nombre de métriques applicatives de la JVM, du serveur d’application, etc.
De nombreux outils permettent de faire cela, et nous allons nous focaliser sur  JMXTrans qui est puissant et simple à installer.
Afin de récupérer les statistiques systèmes (consommation processeur/mémoire, etc.) nous utiliserons collectd.
Enfin, pour afficher l'ensemble de ces métriques, nous utiliserons Graphite.

Lire la suite de cette entrée »

Optimiser une application JEE : mesurer l’impact sur un cas pratique (4ème et dernière partie)

Dernière partie : l'analyse mémoire.

Nous sommes désormais proches de notre objectif d'optimiser notre application pour la rendre robuste à 1000 utilisateurs connectés simultanément.

Notre précédent article faisait état d'une montée linéaire de l'allocation de la Heap malgré un nombre important de Minor GC ne libérant pas suffisamment de mémoire.

A ce stade de l'analyse, ce type de symptômes nous fait penser à une fuite mémoire. Nous allons nous assurer dans cet article du bon fonctionnement de notre mémoire Glassfish.

Lire la suite de cette entrée »

Optimiser une application JEE : mesurer l’impact sur un cas pratique (3ème partie)

3ème partie de notre saga performance.

Lors de notre dernier article, nous avons pu "faire sauter les verrous" en augmentant le pool de threads qui nous limitait le nombre de traitements simultanés dans la montée en charge. Attardons nous maintenant sur la JVM.

Nous n'allons pas perdre de temps dans le fonctionnement d'une JVM plusieurs articles sauront vous le rappeler très simplement comme le chapitre 3 de cet article qui traite de l'overhead, ou bien celui plus spécifique du fonctionnement de la JVM d'IBM J9.

Partant de cela, allons voir un peu comment la notre préfigure ...

Commençons par activer le port JMX sur notre serveur Glassfish pour introspecter avec un outil de monitoring (plusieurs existent comme JConsole inclue dans le J2SE, VisualVM ...).

Lire la suite de cette entrée »

Mots-clés
RSS Feed