|
Le framework JMX et la gestion des performances |
|
|
|
Optimisation -
Performance
|
|
Ecrit par Kamal AOUDA
|
|
19-12-2005 |
|
Le framework JMX et la gestion d
JMX est un framework qui permet d’administrer et de surveiller à distance des
applications Java, mais également les composantes matérielles d’un réseau (PC,
serveur, routeur,...). Comme le montre la figure 13, les MBeans (managed
resources and management beans) se trouvent au cœur de ce framework. Ils
correspondent concrètement à des Java Beans qui permettent à des objets écrits
en Java (93) de disposer d’une interface contenant les informations et les
leviers de contrôle nécessaires à leur surveillance et à leur administration.
Les autres composantes clés du framework sont :
• Les agents (94) qui fournissent des services pour gérer les MBeans, mais
également des adaptateurs de protocoles permettant d'y accéder localement ou à
distance (par exemple depuis un browser HTML) .
• Un serveur MbeanServer qui effectue l’enregistrement des MBeans, leur
référencement et l’agrégation de leurs interfaces et de leurs meta-données. Cela
les rend visibles et exploitables sur le réseau soit par la logique spécifique
des agents, soit par les différents connecteurs (95) et services qui leur sont
associés.
Figure 13: Architecture des Java Management Extensions

Grâce au package javax.management.monitor, un MBean est capable de surveiller
le temps consommé par tous les composants d’une application de commerce
électronique (JSP, servlet, EJB). Notons par ailleurs que la traçabilité offerte
par JMX est meilleure que celle de la deuxième catégorie de profilers parce que
ses fonctionnalités de monitoring s’étendent non seulement aux composants de
l’application mais également aux composantes matérielles du réseau. Un autre
avantage de JMX a trait à la consommation des ressources qui est moindre
comparativement à celle des profilers de la catégorie 2. Cela en fait une
alternative efficace pour surveiller les performances d’une application en phase
de production.
Notes de bas de page
(93) Ces objets peuvent être aussi écrits dans un autre langage mais ils
doivent être dotés d’une interface ad hoc qui permet leur interopérabilité avec
les plateformes Java.
(94) Monitoring, timing, relation et class-loading
(95) En soi un agent ne dispose pas de capacités de communication. Il doit
transiter par un connecteur pour obtenir des capacités de communication via SNMP,
http ou tout autre protocole
|
|
Dernière mise à jour : ( 20-12-2005 )
|