Solventando los Classloader Memory Leaks de WebSphere

He encontrado en este blog

Un interesante artículo en el que se cuenta cómo prevenir/solventar los memory leaks de WebSphere:

· Las aplicaciones suelen arrancar hilos, en esos casos las aplicaciones deben asegurarse de que esos hilos se paran cuando la aplicación se para.

· Las referencias a variables ThreadLocal deben limpiarse

· Los MBeans deben deregistrarse

 

Para esto se puede usar javax.servlet.ServletContextListener.contextDestroyed que notifica cuando un WAR se está parando.

 

A uno que yo me sé todo esto le sonará 😀

Publicado en Java, Tuning. 1 Comment »

Un poco de MTOM

MTOM (SOAP Message Transmission Optimization Mechanism) es un estándar de Web Services que permite transferir datos binaries de una forma más eficiente a los SOAP Attachments.

MTOM requiere paquetes XOP (XML-binary Optimized Packaging) en lugar de definir el mensaje MIME Multipart/Related como parte del SOAP binding. Cuando el binario forma parte de un document XML necesita codificarse en base64 . Con MTOM los datos binaries se envían como attachment.

Para usar MTOM basta con seguir estos pasos:

· Indicar en el esquema o en el bean JAXB que quieres usar MTOM:

· Habilitar MTOM en el Servicio:

o En Spring:

o En Java:

· Consumir los datos del DataHandler:

Microsoft y el movimiento Open Source

Algo está cambiando en Microsoft y parece que su acercamiento al mundo Open Source sigue a buen ritmo, acaban de publicar el código fuente de ASP .Net

(claro otra forma de verlo es que no les han quedado más XXX)

http://msdn.microsoft.com/es-es/opensource

RedHat: la primera empresa Open Source en conseguir 1 billón de dólares de ingresos para 2012

Un poco de Arduino

Arduino es una plataforma de hardware basada en una placa con un microcontrolador Atmet AVR y puertos de entrada y salida y un entorno de desarrollo (link) que permite programar en el lenguaje de programación Processing/Wiring y cargar el código a la placa.

Arduino puede tomar información del entorno a través de sus pines de entrada de toda una gama de sensores y puede afectar aquello que le rodea controlando luces, motores y otros actuadores.

El microcontrolador en la placa Arduino se programa mediante el lenguaje de programación Arduino (Wiring) y el entorno de desarrollo Arduino (Processing).

Para continuar profundizando un poco podéis seguir en Comenzando con Arduino en Windows

Podéis comprar diferentes placas por ejemplo aquí.

Otra referencia interesante es este post de JavaHispano en el que muestran cómo controlar un dispositivo Arduino desde un Android.

Desarrollando la primera aplicación Windows Phone

Para todos estos que piensan que Android y su plugin para Eclipse es lo más para el desarrollo de aplicaciones móviles!

La realidad es que en esto Microsoft siempre le ha sacado mucha ventaja al mundo Java en general (y hasta para el vetusto Windows Mobile el Visual Studio permitía desarrollar aplicaciones de una forma muy sencilla)

Build your first Windows Phone 7 app

WebSphere Application Server Performance Tuning Toolkit

IBM ha publicado un conjunto de herramientas orientadas a opimizar el rendimiento del servidor WebSphere que proporcionan la habilidad de monitorizar varios servidores WebSphere desde un mismo workspace de Eclipse.

Estas herramientas utilizan estadísticas sobre rendimiento del WAS para construir gráficas e informes que indiquen el estado del servidor (de momento las herramientas no ofrecen soporte).

Razones por las que es recomendable esta solución de monitorización frente a otras

1.- Es gratuita.

2.- No es necesario instalar agentes en el servidor.

3.- Monitoriza múltiples servidores.

4.- Proporciona un visor standalone para PMI y estadísticas mbean. Además incluye un RCP GUI que utiliza el cliente ligero del administrador del servidor para llamar a un proxy JMX (el proxy JMX s se comunicará con el WAS mediante SOAP/RMI).

5.- Acciones y alertas predefinidas.

6.- Monitorización:

El panel de monitorización presenta información de rendimiento (Tiempo de Respuesta y Throughput de Servlet, Transacciones y Jdbc) mediante vistas clasificadas que sirven de ayuda para correlacionar y comprender el estado del servidor.

Página de tiempo de respuesta.

Página de Throughput.

Página de Concurrencia.

Otras páginas: Alertas, Servlet, Transacción, EJB, Pool de conexiones, Runtime, Session, ThreadPool.

Para saber más: http://www.ibm.com/developerworks/websphere/downloads/peformtuning.html

A %d blogueros les gusta esto: