WebSphere Message Broker incluye muchos nodos de proceso de mensajes que puede utilizar en sus flujos de mensajes.
Consulte el tema de concepto, Nodos de flujo mensajes.
WebSphere Message Broker también ofrece una interfaz que puede utilizar para definir los nodos propios, que se conocen como nodos definidos por el usuario.
La modalidad en la que trabaja el intermediario puede afectar a los tipos de nodo que puede utilizar; consulte Restricciones que se aplican en cada modalidad de operación.
La decisión sobre qué nodos utilizar depende del proceso que desee realizar en los mensajes.
Un nodo de entrada es diferente de otros nodos, porque controla cuando el resto del flujo de mensajes se desencadena para realizar su proceso. El nodo de entrada está diseñado para comprobar si existen datos para que el flujo de mensajes los procese, lea esos datos del transporte o el servidor y presente dichos datos al resto del flujo para su proceso. Los otros nodos realizan proceso pero no controlan cuándo se invoca el flujo.
También puede utilizar nodos de respuesta y de solicitud para interactuar con otras aplicaciones desde dentro de un flujo de mensajes; estos tipos de nodos se proporcionan solamente para un subconjunto de protocolos.
La mayoría de empresas tienes aplicaciones que se han desarrollado a lo largo de muchos años, en distintos sistemas, utilizando lenguajes de programación distintos y métodos de comunicación también distintos. WebSphere Message Broker elimina la necesidad de que las aplicaciones entiendan estas diferencias ya que proporciona la posibilidad de configurar flujos de mensajes que transforman los mensajes de un formato a otro.
Por ejemplo, los nombres de las personas están en distintos formatos en las distintas aplicaciones. El primer o segundo apellido, con o sin iniciales del segundo apellido, en mayúsculas o minúsculas son solo algunas de las permutaciones. Puesto que puede configurar el flujo de mensajes según los requisitos de cada aplicación, cada mensaje puede transformarse al formato correcto sin modificar la aplicación que lo envía ni la que lo recibe.
Puede trabajar con el contenido del mensaje para actualizarlo de diversas maneras. La elección dependerá de si el flujo de mensajes debe manejar mensajes predefinidos (con modelo), mensajes autodefinidos (por ejemplo, XML), o ambos.
Un flujo de mensajes puede reconstruir completamente un mensaje, convertirlo de un formato a otro (por ejemplo, cambiando el orden de los campos, el orden de los bytes o el idioma), eliminar contenido del mensaje o colocar datos específicos en él. Por ejemplo, un nodo puede interactuar con una base de datos para recuperar información adicional, o para almacenar una copia del mensaje (total o parcial) en la base de datos para su proceso fuera de línea.
También puede crear flujos de mensajes que utilizan estos nodos para interactuar entre sí. Aunque el funcionamiento predeterminado de un flujo de mensajes no afecta al funcionamiento de otro flujo de mensajes, puede forzar esta acción configurando sus flujos de mensajes de forma que almacenen y recuperen información en una fuente externa como, por ejemplo, una base de datos.
Estos nodos se proporcionan para transformar mensajes.
Puede utilizar nodos que determinen el orden y el flujo de control en el flujo de mensajes de varias formas para decidir cómo el flujo procesa los mensajes. También puede utilizar nodos (TimeoutControl y TimeoutNotification) que determinen la hora y la frecuencia de aparición de sucesos dentro del flujo de mensajes. El direccionamiento es independiente de la transformación de mensajes, aunque la ruta que toma un mensaje puede determinar con exactitud la transformación que se efectúa en el mismo.
Por ejemplo, una aplicación de transferencia de dinero siempre envía mensajes a otra aplicación. Puede decidir que cada mensaje con un valor de transferencia superior a los 10.000 euros también debe enviarse a una segunda aplicación, para que se registren todas las transacciones de gran valor.
En otro ejemplo, un club automovilístico nacional ofrece un servicio 'premier' a miembros específicos por pedidos superiores a un cierto valor. La mayor parte de los pedidos se direccionan a través de los canales habituales, pero si el número de miembro y el valor del pedido cumplen ciertos criterios, el pedido recibe un tratamiento especial.
También puede establecer una opción de direccionamiento más dinámica creando información adicional de direccionamiento en el mensaje cuando éste se procesa. Se establecen conjuntos de normas opcionales para recibir mensajes según los valores (destinos) establecidos en el mensaje. Puede establecer estas reglas que indican que un mensaje sea procesado por uno o más conjuntos de reglas opcionales, en el orden que determine el contenido del mensaje añadido.
Estos nodos se proporcionan para decidir la ruta que sigue un mensaje a través del flujo de mensajes.