Complementos de Telemática II

Complementos de Telemática II Grupo JMX_A Olga Martínez Gómez Noelia Martín Hernández Daniel Ramos Fuentes Contenidos  Introducción  JMX  Aplica

3 downloads 70 Views 1MB Size

Story Transcript

Complementos de Telemática II Grupo JMX_A Olga Martínez Gómez Noelia Martín Hernández Daniel Ramos Fuentes

Contenidos  Introducción  JMX

 Aplicación práctica  Conclusiones

Introducción y contexto  La gestión integrada intenta salvaguardar la creciente heterogeneidad y complejidad en las redes de telecomunicaciones .  Necesidad de disponer de sistemas de gestión para la configuración, supervisión, diagnóstico y mantenimiento de los dispositivos.

 JMX se encuentra entre las tecnologías destinadas a la gestión integrada, proporcionando las herramientas necesarias para monitorizar y gestionar aplicaciones.  JMX es una solución para la gestión de aplicaciones y servicios Java, compatible con las tecnologías de gestión existentes.  JMX proporciona una gestión rápida y fácil de aprender.

Objetivos y motivación • Aprender a utilizar JMX. • Comprobar cómo JMX solventa los problemas de la

gestión de aplicaciones a través de la realización de un ejemplo práctico . • Mostrar cómo JMX nos parece una buena solución

para la gestión de aplicaciones Java, permitiendo gestionarlas de una manera relativamente sencilla.

Metodología • Familiarizarnos con JMX. Entender el uso de las MBeans Standard. • Elegir y compilar el código fuente de la aplicación Java que queremos

instrumentar usando el entorno de desarrollo Eclipse. • Buscar los parámetros de la aplicación que queremos gestionar.

• Introducir el código necesario para instrumentar la aplicación. • Usar la herramienta JConsole para realizar pruebas. • Gestionar la aplicación desde un navegador web. Adaptador HTML.

JMX: Introducción • ¿Qué es JMX? • ¿Para qué sirve JMX? ▫ Gestión de dispositivos ▫ Gestión de aplicaciones

• ¿Cómo lleva a cabo su cometido? ▫ Instrumentación de recursos: Concepto de MBean

JMX: Arquitectura (I) • Fundamentada en un modelo de 3 capas:

▫ Nivel de gestión

▫ Nivel de agente

▫ Nivel de instrumentación

JMX: Arquitectura (II)  Comprende 3 componentes:  Recurso gestionable  

Desarrollado en Java Recurso intermediario escrito en Java

 Agente JMX  Formado por: servidor, recursos gestionables y adaptadores o conectores.  Puede contener servicios de gestión.  Gestor JMX  Proporciona una interfaz de comunicación entre agentes y aplicaciones.

JMX: Tipos de MBean • Cada MBean: • •

Tiene un nombre Debe registrarse en un servidor

• Tipos de MBean: 

MBean estándar (Standard MBean) 



MBean dinámico (Dynamic MBean) 



Utilizado para acceder a recursos que no utilizan Java

MBean modelo (Model MBean) 



Posee una interfaz estática

MBean dinámico. Instrumentar recursos en tiempo de ejecución

MBean abierto (Open MBean) 

MBean dinámico. Utilizar objetos descubrimientos en t. de ejecución

• Sistema de notificaciones

JMX: Monitorización: JConsole  Proporcionada por el JDK.  Monitorizar recursos utilizados por la JVM.  Destacar el apartado de los MBean.  Dos tipos de monitorización:  

Local Remota

Aplicación práctica  ¿En qué consiste?  Un 3 En Raya.  Muestra un menú con las opciones:    

Iniciar un nuevo juego. Colocar ficha. Mostrar tablero Obtener el estado de la partida.

 Premisas:  

Empieza siempre a jugar el jugador 1 y se alterna con el 2. Incumplimiento de normas  Excepciones.

Aplicación práctica  Los parámetros a gestionar:  Número de fichas que ha colocado el jugador 1.  Número de fichas que ha colocado el jugador 2.  Número de partidas totales desde el comienzo de la aplicación.  Número de posiciones vacías.  Número de veces que se ha terminado en tablas.  Número de veces que ha ganado el jugador 1.  Número de veces que ha ganado el jugador 2.

Aplicación práctica  Los notificaciones a gestionar:  Cuando se inicia un nuevo juego.  Cuando se arranca la aplicación.  Cuando gana un jugador.  Cambios oportunos para la gestión vía Web.

Cambios en la aplicación: código.  Los cambios se van a efectuar en dos de nuestras clases

que son:  GestorJuego  Clase que contiene la lógica del juego.  ClienteJuego  Clase con la función principal, genera

el menu y según la opción que elija el usuario llama a la funcion de GestorJuego que la realiza.

Cambios en la aplicación: código.  Parámetros a gestionar: 

Dentro de la clase GestorJuego:  Para obtener el valor del parámetro:



Para cambiar el valor del parámetro:

Cambios en la aplicación: código.  Parámetros a gestionar:  Declaración del Mbean.  Se añade el siguiente código a ClienteJuego:

Cambios en la aplicación: código.  Notificaciones:  Dentro de las funciones set de GestorJuego añadimos:

 Al final se añade:

Cambios en la aplicación: código.  Gestión mediante el navegador Web. 



Para hacer la gestión como en JConsole pero desde un navegador es necesario emplear un adaptador HTML. El código que se añade en ClienteJuego para ello es:

Pruebas: Ejemplos de funcionamiento.  Gestión mediante JConsole de los parámetros:

Pruebas: Ejemplos de funcionamiento.  Gestión mediante navegador Web:

Conclusiones  Instrumentar una aplicación mediante JMX ha resultado relativamente

sencillo.  El proceso de desarrollo ha sido medianamente fácil debido a que la

información referente a JMX está muy bien documentada.  La introducción de los adaptadores HTML fue algo mas compleja,

debido a que la documentación no se encontraba tan bien organizada.  JMX es una tecnología fuertemente vinculada a Java, perfilándose como

una buena solución de gestión de aplicaciones Java pese a no poder comparar con otras soluciones.

Get in touch

Social

© Copyright 2013 - 2024 MYDOKUMENT.COM - All rights reserved.