Java Management Extensions (JMX): El estándar de Java para administrar recursos de aplicaciones

JMX es el nuevo estándar de Java para administrar los recursos de una aplicación. Está diseñado para trabajar con soluciones existentes, como el Protocolo Simple de Administración de Red (SNMP) y la Administración Empresarial Basada en Web (WBEM), y para mantener los estándares entre todas las nuevas interfaces de administración de J2EE. JMX permite a los desarrolladores de Java crear una forma de mantener una aplicación a través de una interfaz administrativa, en lugar de a través de archivos de registro y la línea de comandos.

Índice de Contenido
  1. Impresiones de "Java Management Extensions"
  2. Análisis de "Java Management Extensions"
    1. La introducción, fundamental
    2. Entendiendo el entorno de los MBean
    3. Falta de ejemplos decepcionante
  3. Veredicto final

Impresiones de "Java Management Extensions"

Antes de conocer "Java Management Extensions" de O'Reilly, había utilizado JMX para construir componentes de monitoreo para nuestro servidor de aplicaciones JBoss. Había creado Managed Beans (MBeans), el tipo más simple de bean JMX, y los había conectado al servidor. Luego, al acceder a una página web, podía ver la lista de servicios MBean en el sistema e incluso iniciar, detener o modificarlos. Esto me facilitó mucho ver cuántos usuarios teníamos actualmente conectados a nuestro servidor personalizado e incluso reiniciar hilos bloqueados. Pero quería comprender lo que estaba sucediendo debajo del marco que estaba utilizando en nuestra solución J2EE. Eso es lo que esperaba obtener de este libro. Sin embargo, como verás, me decepcionó un poco. La Figura A ofrece un resumen rápido de mis impresiones.

Java Management Extensions (JMX): El estándar de Java para administrar recursos de aplicaciones - Desarrollo | Imagen 1 Newsmatic
Figura A

Análisis de "Java Management Extensions"

El libro está organizado en dos secciones, una para cada nivel de funcionalidad de JMX. La primera sección cubre el nivel de instrumentación, que incluye varios tipos de MBeans que se pueden extender para crear una aplicación compatible con JMX. La segunda sección aborda el nivel del agente, que explica el entorno en el que se colocarán y funcionarán los MBeans. Técnicamente hay un tercer nivel, el nivel de servicios distribuidos, pero este nivel aún no es una parte terminada de la especificación. Por lo tanto, el autor comprensiblemente se limita a discutir los servicios distribuidos solo en la introducción.

La introducción, fundamental

No es muy común considerar la introducción de un libro como un capítulo importante, y sin embargo, con este libro es una parte crítica. La introducción te brinda una visión general de alto nivel de la especificación de JMX, que necesitarás comprender para seguir el resto del texto. Incluso llega hasta proporcionar un ejemplo, aunque muy abstracto.

Después de la introducción, el libro entra de lleno en los detalles de JMX e introduce el MBean. Hay cuatro tipos de MBeans: Standard, Dynamic, Model y Open, y por lo tanto, cuatro capítulos dedicados a ellos, uno para cada tipo. Cada capítulo toma la forma de una página que explica cuándo y por qué debería usar ese tipo particular de MBean, e incluye una descripción detallada de cómo funciona. Estos primeros cuatro capítulos ocupan las primeras 140 páginas, casi el cincuenta por ciento del libro, y cubren el nivel de instrumentación de JMX.

Aunque el libro te guía cuidadosamente a través de cada tipo de MBean, me resultó un poco difícil de seguir. Debido a la similitud de cada tipo de MBean, los primeros cuatro capítulos parecen no avanzar realmente, y tuve que esforzarme para poder completarlos. Cada capítulo incluye un ejemplo, pero todos se reducen básicamente a aplicar MBeans a una cola aburrida. Tal vez enfocarse en algo más animado que una cola hubiera ayudado a mantener el interés.

Aumenta el rendimiento de tus aplicaciones ASP.NET con el motor de caché integrado

Entendiendo el entorno de los MBean

La segunda mitad del libro representa el nivel medio del agente de las tres capas de JMX. Esta sección cubre lo que constituye el contenedor en el que se ajustan los MBeans, el servidor de MBeans y el modelo de notificaciones, y una lista de los servicios estándar que se espera que cada contenedor de JMX tenga. Si bien encontré que estos capítulos me dieron una idea de las cosas que podría estar haciendo en mi servidor administrado, no me proporcionaron ideas sobre cómo usar los MBeans ni cómo lo que estaba aprendiendo podría aplicarse a mi código.

Aquí hubiera sido interesante tener un ejemplo de cómo escribir un servicio. En el trabajo, reemplazamos un servicio de temporizador por un servicio basado en Quartz, una API de código abierto similar a cron en Java, y lo hemos estado utilizando felizmente en producción. Un ejemplo de un servicio escrito por el autor hubiera sido agradable aquí, o incluso al final del libro.

Falta de ejemplos decepcionante

Como mencioné, busqué en este libro algo que me mostrara la estructura debajo del marco que estaba utilizando con mi solución J2EE. Si bien "Java Management Extensions" logra esto, no me entusiasmó correr a aplicar nada de lo que aprendí. Realmente no hay nada obviamente malo en el libro; el estilo del autor no es desagradable, muestra comprensión de la especificación de JMX y cubre bien el tema. Sin embargo, algo simplemente no hizo clic para mí.

Creo que el problema podría ser que la utilidad que obtengo de JMX no se refleja en absoluto en este libro. Al menos en mi caso, creo que no logra mostrar una buena imagen de por qué querrías utilizar JMX en primer lugar porque carece de ejemplos convincentes. Imagina un libro sobre servlets que no proporciona ejemplos atractivos de servlets en funcionamiento en un contenedor, y tendrás una idea. Tal vez muchos de mis problemas puedan atribuirse a la novedad de JMX, pero eso no justifica la falta de ejemplos interesantes.

Veredicto final

Si ya estás usando MBeans, no puedes equivocarte al agregar este libro a tu arsenal. Servirá felizmente la mayoría de tus necesidades de referencia, evitándote la búsqueda en la web o en la documentación de tu contenedor J2EE. Sin embargo, si actualmente no estás utilizando JMX y estás buscando un libro que te lo presente y te permita comprenderlo, te recomendaría esperar a la segunda edición. Quizás para entonces, JMX estará más maduro y el autor tendrá ejemplos de contenedores y MBeans para incorporar, así como una tercera sección sobre servicios distribuidos. En resumen, no lo compres, simplemente ve y lee la introducción en una librería.

J2ME: La plataforma de desarrollo Java para dispositivos móviles

En Newsmatic nos especializamos en tecnología de vanguardia, contamos con los artículos mas novedosos sobre Desarrollo, allí encontraras muchos artículos similares a Java Management Extensions (JMX): El estándar de Java para administrar recursos de aplicaciones , tenemos lo ultimo en tecnología 2023.

Artículos Relacionados

Subir

Utilizamos cookies para mejorar su experiencia de navegación, mostrarle anuncios o contenidos personalizados y analizar nuestro tráfico. Al hacer clic en “Aceptar todo” usted da su consentimiento a nuestro uso de las cookies.