WebSphere Message Broker, Versión 8.0.0.5 Sistemas operativos: AIX, HP-Itanium, Linux, Solaris, Windows, z/OS

Consulte la información sobre la última versión del producto en IBM Integration Bus, Versión 9.0

Optimizar los tiempos de respuesta de los flujos de mensajes

Puede utilizar distintas soluciones para mejorar los tiempos de respuesta de los flujos de mensajes.

Antes de empezar:

Cuando se diseña un flujo de mensajes, la flexibilidad y las prestaciones funcionales de los nodos incorporados a menudo significa que hay varias formas de conseguir el proceso y los resultados requeridos. Es posible que observe que hay diversas soluciones que ofrecen distintos niveles de rendimiento y, si el rendimiento es una consideración importante para usted, téngalo en cuenta a la hora de diseñar el flujo de mensajes.

Las aplicaciones pueden percibir el rendimiento de cualquiera de estas formas:

Varios factores afectan a los tiempos de respuesta del flujo de mensajes. Sin embargo, cuando se crea o se modifica el diseño del flujo de mensajes para obtener mejores resultados para sus necesidades específicas del negocio, también debe tener en cuenta la eventual complejidad del flujo de mensajes. Los flujos de mensajes más eficaces no son necesariamente los más fáciles de entender y mantener; experimente las distintas soluciones disponibles hasta obtener el mejor equilibrio para sus necesidades.

Hay varios factores que afectan a los tiempos de respuesta del flujo de mensajes:

El número de nodos que se incluyen en el flujo de mensajes
Cada nodo aumenta la cantidad de proceso necesaria en el intermediario, por lo que debe tener en cuenta especialmente el contenido del flujo de mensajes, incluido el uso de subflujos.

En un flujo de mensajes, utilice el menor número posible de nodos; cada nodo que se incluye en el flujo de mensajes aumenta la cantidad de proceso necesaria en el intermediario. La cantidad de nodos en un solo flujo tiene un límite máximo, que viene regido por los recursos del sistema, en particular, por el tamaño de pila. Para obtener más información sobre los tamaños de pila, consulte Recursos del sistema para el desarrollo de flujos de mensajes.

Cómo el flujo de mensajes direcciona y procesa los mensajes

En algunas situaciones, puede encontrarse con que los nodos incorporados y quizás otros nodos que están disponibles en el sistema, proporcionan más de una forma de ofrecer la misma función. Elija la configuración más sencilla. Cuando se necesita un flujo de mensajes para procesar más de un solo tipo de registro, puede crear una infraestructura fácilmente ampliable con el desarrollo de una estructura de flujo de mensajes en la que se realiza un análisis del mensaje para determinar el tipo, seguido por un nodo RouteToLabel y de los nodos Label para cada uno de los tipos. Cuando se prevé un número más alto de nodos de etiqueta, considere la posibilidad de implementar el análisis del mensaje y la selección Etiqueta en un flujo de mensajes y el proceso de cada uno de los tipos de etiquetas en flujos de mensajes independientes. La interfaz entre estos dos flujos sería a través de una cola.

El siguiente ejemplo muestra cómo se pueden utilizar los nodos RouteToLabel y Label en vez de varios nodos Filter en el flujo de mensajes XML_PassengerQuery. El siguiente ejemplo muestra cómo se puede almacenar información de direccionamiento de una tabla de base de datos en una memoria caché interna del flujo de mensajes.
  • Direccionamiento de mensajes

    Puede ver información sobre los ejemplos sólo cuando utilice el Information Center que está integrado en WebSphere Message Broker Toolkit o el Information Center en línea. Puede ejecutar ejemplos sólo cuando utilice el Information Center que está integrado en WebSphere Message Broker Toolkit.

Si el flujo de mensajes incluye bucles
Evite los bucles de nodos que se repiten, pueden ser muy ineficaces y causar problemas de rendimiento y de pila. Puede pensar que un nodo Compute con varias sentencias PROPAGATE evita la necesidad de efectuar bucles de una serie de nodos.
La eficacia del ESQL
Compruebe todo el código ESQL que ha creado para los nodos de flujo de mensajes. Cuando desarrolla y prueba un nodo, quizá conserve sentencias que no son necesarias cuando ha finalizado el proceso del mensaje. Puede también encontrarse con que ha codificado como dos sentencias lo que se puede codificar en una. El dedicar un tiempo a la revisión y comprobación del código ESQL puede hacer que éste se simplifique y mejore el rendimiento.
El uso de mensajes persistentes y de transacciones
Los mensajes persistentes se guardan en el disco durante el proceso del flujo de mensajes. Puede evitar esta situación especificando que los mensajes no son persistentes en la entrada, en la salida o ambas. Si el flujo de mensajes sólo maneja mensajes no persistentes, compruebe la configuración de los nodos y el flujo de mensajes mismo; si los mensajes son no persistentes, quizá no sea necesario el soporte de transacciones. La configuración predeterminada de algunos nodos fuerza la transacciones; si actualiza estas propiedades y vuelve a desplegar el flujo de mensajes, quizá mejore los tiempos de respuesta.
Tamaño del mensaje
Cuanto más grande es el mensaje, más tiempo requiere su proceso. Si puede dividir los mensajes grandes en unidades de información más pequeños, quizá pueda mejorar la velocidad a la que los maneja el flujo de mensajes. El siguiente ejemplo muestra cómo minimizar los requisitos de almacenamiento virtual para el flujo de mensajes a fin de mejorar el rendimiento de un flujo de mensajes al procesar mensajes potencialmente grandes.

Puede ver información sobre los ejemplos sólo cuando utilice el Information Center que está integrado en WebSphere Message Broker Toolkit o el Information Center en línea. Puede ejecutar ejemplos sólo cuando utilice el Information Center que está integrado en WebSphere Message Broker Toolkit.

Formato del mensaje
Aunque WebSphere Message Broker da soporte a varios formatos de mensajes múltiples y proporciona recursos que puede utilizar para transformar de un formato a otro, esta transformación incrementa la cantidad de proceso necesaria en el intermediario. Asegúrese de que no efectúa ninguna conversión ni transformación innecesaria.

Puede encontrar más información sobre cómo mejorar el rendimiento de un flujo de mensajes en un artículo de developerWorks (Artículo de developerWorks sobre el rendimiento de los flujos de mensajes).

Avisos | Marcas registradas | Descargas | Biblioteca | Soporte | Comentarios

Copyright IBM Corporation 1999, 2014Copyright IBM Corporation 1999, 2014.

        
        Última actualización:
        
        Última actualización: 2015-02-28 16:58:13


Tema de tareaTema de tarea | Versión 8.0.0.5 | ac00355_