Flujos de mensajes invocables
Un flujo de mensajes puede llamar directamente a otro flujo. Puede implementar ambos flujos en IBM® App Connect Enterprise o IBMApp Connect Enterprise as a Service, o bien puede implementar un flujo en App Connect Enterprise y otro en App Connect Enterprise as a Service.
Un flujo de mensajes puede realizar muchas acciones distintas. Si algunas de esas acciones son dificultosas, puede desglosarlas del flujo principal y realizarlas en otro lugar. Los flujos invocables también facilitan la reutilización, ya que pueden ser llamados por varios flujos de mensajes. Puede dividir los flujos entre aplicaciones diferentes del mismo servidor de integración, o entre servidores de integración diferentes que también pueden estar en distintos nodos de integración. Los flujos invocables deben encontrarse en aplicaciones. No puede desplegar flujos invocables en bibliotecas o proyectos de integración.
Algunas partes de un flujo de mensajes pueden pertenecer lógicamente a una ubicación específica. Por ejemplo, si el flujo de mensajes consulta una base de datos local, el rendimiento es mejor si esa parte del flujo sigue siendo local. Sin embargo, si parte del flujo consulta un sitio web varias veces, el rendimiento podría mejorar si esa parte del flujo se ejecuta en la nube. Puede llamar al flujo basado en la nube desde el flujo local, y el flujo en la nube no utilizará ninguno de los recursos locales.
Si sus flujos invocables están implementados en App Connect Enterprise as a Service, pueden comunicarse entre sí tan pronto como los implemente. No es necesario configurar la comunicación entre ellos. Tampoco es necesario configurar la comunicación si ambos flujos se implementan en el mismo servidor de integración en IBM App Connect Enterprise.
Si está dividiendo el procesamiento entre diferentes servidores de integración, o entre App Connect Enterprise y App Connect Enterprise as a Service, sus flujos se comunican mediante el uso de un Cambiar de servidor y agentes de conectividad. El servidor de conmutación es un tipo especial de servidor de integración que direcciona datos. No puede desplegar nada en el servidor de conmutación. Los agentes de conectividad contienen los certificados que los flujos necesitan para comunicarse de forma segura con el servidor de conmutación. Los agentes de conectividad deben estar en ejecución en los servidores de integración donde ha desplegado los flujos de mensajes locales.
Puede dividir el procesamiento de forma sincrónica entre flujos de mensajes utilizando el CallableFlowInvoke nodo en el flujo de llamada, y CallableInput y CallableReply nodos en el flujo invocable. Como alternativa, puede dividir el procesamiento de forma asincrónica entre flujos de mensajes, utilizando el método CallableFlowAsyncInvoke nodo en el flujo de llamadas, CallableInput y CallableReply nodos en el flujo invocable, y el CallableFlowAsyncResponse nodo en el flujo de respuesta. También puede elegir compartir los datos entre los flujos que contienen estos nodos asíncronos (el flujo de llamada y el flujo de salida) almacenando y recuperando datos en la carpeta UserContext del entorno. Para obtener más información sobre cómo compartir datos entre flujos, consulte Compartir datos entre un flujo de llamada y un flujo de respuesta.
Los dominios de mensajes que admite un flujo invocable se determinan mediante las propiedades que se establecen en las etiquetas CallableInput y CallableReply. La tabla Dominios soportados de cada nodo muestra los dominios de mensajes soportados, junto con información sobre los modelos de mensajes, tipos de mensajes y formatos físicos de mensajes soportados. Los nodos también contienen una opción para cotejar los mensajes con la información de dominio admitida. Para obtener más información, consulte Comprobación de dominios en flujos de mensajes invocables.
Puede dividir los flujos en varios flujos invocables. Sin embargo, para mayor simplicidad, los escenarios siguientes presuponen que está utilizando sólo dos flujos de mensajes de App Connect Enterprise : un flujo de llamada y un flujo invocable.
Escenarios
División de flujos síncrona entre aplicaciones del mismo servidor de integración

División de flujos síncrona entre aplicaciones en distintos servidores de integración

Si los flujos se dividen entre distintos servidores de integración en App Connect Enterprise, debe ejecutar un mandato que cree algunos archivos de configuración. Utilizará uno de los archivos de configuración para crear el servidor de conmutación y el otro archivo para configurar agentes de conectividad para cada servidor de integración. Los servidores de integración pueden estar en el mismo nodo de integración o en nodos de integración diferentes. Este escenario solo está soportado en Windows y Linux® .
Para obtener más información, consulte Preparación del entorno para dividir el procesamiento entre distintos servidores de integración.
Dividir flujos sincrónicamente entre App Connect Enterprise y App Connect Enterprise as a Service


Si sus flujos se dividen entre App Connect Enterprise y App Connect Enterprise as a Service, el servidor Switch es administrado por App Connect Enterprise as a Service. Debe descargar un archivo de la nube que configura un agente de conectividad local. Este escenario solo está soportado en Windows y Linux .
Para obtener más información, consulte «Preparación del entorno para dividir el procesamiento entre IBM App Connect Enterprise y IBM » en App Connect Enterprise as a Service.
Dividir flujos de forma asincrónica en App Connect Enterprise, o entre App Connect Enterprise y App Connect Enterprise as a Service
Un flujo de mensajes contiene un CallableFlowAsyncInvoke nodo, que llama a un segundo ( invocable) flujo de mensajes que contiene un CallableInput nodo y un CallableReply nodo. Un tercio ( respuesta) el flujo contiene un CallableFlowAsyncResponse nodo.
Cuando un mensaje se pasa al flujo de mensajes de llamada, el CallableFlowAsyncInvoke El nodo envía el contenido del cuerpo del mensaje y las carpetas del entorno al CallableInput nodo del flujo invocable y luego se completa inmediatamente. Cuando el flujo invocable completa el procesamiento, el CallableReply El nodo envía el cuerpo del mensaje y los datos de la carpeta del entorno al CallableFlowAsyncResponse nodo en el flujo de respuesta.
Si los flujos están divididos entre distintos servidores de integración, hay que crear un servidor de conmutación (que direccione datos) y agentes de conectividad para permitir que los flujos se comuniquen de forma segura. Para obtener más información, consulte Preparación del entorno para flujos invocables.
Configuración del flujo

En este ejemplo, el CallableFlowInvoke El nodo analiza el mensaje entrante en su totalidad para que esté en un formato adecuado para enviarlo al CallableInput nodo. Por lo tanto, debe validar el mensaje antes de que llegue al CallableFlowInvoke nodo. Si el mensaje no pasa la validación en este momento, puede retrotraerse.

Puedes agregar varios CallableFlowInvoke o CallableFlowAsyncInvoke nodos a un flujo de mensajes. También puedes incluir CallableFlowInvoke o CallableFlowAsyncInvoke nodos en sus flujos invocables. Los pares de nombre de aplicación y punto final deben ser exclusivos en un único servidor de integración. Puede tener varios flujos invocables que tengan los mismos nombres de aplicación y punto final, pero deben estar en servidores de integración diferentes. En este caso, el servidor de conmutación actúa como un equilibrador de carga.
Despliegue
Después de desarrollar los flujos de mensajes, debe empaquetar las aplicaciones que los contienen en archivos BAR y desplegarlos en las ubicaciones adecuadas. Si el flujo accede a recursos locales, despliegue el archivo BAR de forma local. Si el flujo se ejecutará en la nube, cargue su archivo BAR en App Connect Enterprise as a Service.
Cuando el flujo de llamada recibe un mensaje de entrada, el CallableFlowInvoke o CallableFlowAsyncInvoke El nodo utiliza el nombre de la aplicación y elEndpoint Name sobre el CallableInput nodo para identificar e iniciar el flujo invocable.
La guía de aprendizaje Flujos invocables en la Galería de guías de aprendizaje muestra cómo utilizar los nodos de flujos invocables para dividir el proceso entre los flujos. En el kit de herramientas de « IBM App Connect Enterprise », haz clic en y, a continuación, busca callableflows.
Para obtener información detallada sobre cómo configurar flujos de mensajes invocables, consulte Dividir el procesamiento de los flujos de mensajes.