Componentes de la solución orientada a servicios

En esta sección se describen los principales componentes de BizTalk Server de la solución orientada a servicios. El siguiente diagrama muestra los principales componentes de la solución:

Diagrama de flujo de soluciones orientadas a

La solución orientada a servicios tiene tres versiones de las orquestaciones:

  • Una versión en la que las tres aplicaciones servidor son auxiliares

  • Una versión en la que las tres aplicaciones servidor se invocan en línea

  • Una versión que utiliza adaptadores para conectarse a las aplicaciones.

    Todas las versiones de las orquestaciones se muestran en el directorio SDK\Senarios\SO\BTSSoln\Orchestrations.

    La versión en línea de las orquestaciones ofrece el tiempo más bajo de latencia entre las solicitudes y las respuestas dentro de la solución.

    Para obtener información sobre los archivos de origen, vea Inventario de archivos para la solución orientada a servicios.

Orquestaciones en la solución orientada a servicios

Tres orquestaciones, CustomerServiceReceiveSend, CustomerServiceNativeRequestResponse y CustomerService componen la mayor parte de la solución. Las orquestaciones CustomerServiceReceiveSend y CustomerServiceNativeRequestResponse actúan como front-end que llaman a la orquestación CustomerService . La orquestación CustomerService realiza la mayor parte del trabajo: enviar solicitudes a las aplicaciones back-end, recopilar las respuestas, combinar las respuestas en un solo mensaje y enviar el mensaje a la orquestación de front-end adecuada. Dado que las orquestaciones de front-end llaman a la orquestación CustomerService , las orquestaciones de front-end esperan hasta que finalice la orquestación CustomerService .

La solución expone la orquestación CustomerServiceNativeRequestResponse como un servicio web. La orquestación CustomerServiceReceiveSend toma mensajes de una cola MQSeries.

Aplicaciones de servidor

La solución orientada a servicios se comunica con tres aplicaciones servidor:

  • La aplicación PaymentTracker devuelve una lista simulada de pagos recientes. PaymentTracker lee la solicitud de una cola MQSeries y envía la respuesta a otra cola mqSeries.

  • La aplicación PendingTransaction informa de la suma de las transacciones pendientes en la cuenta de cliente. La aplicación es un servicio Web que, a su vez, utiliza Microsoft Host Integration Server (HIS) para comunicarse con un programa CICS/COBOL en un gran sistema (mainframe).

  • La aplicación SAP suministra información sobre el límite de crédito global del cliente. La solución se conecta a la aplicación SAP como servicio Web. La aplicación usa el adaptador de SAP en El paquete de adaptadores de BizTalk para comunicarse con un sistema SAP.

Pipelines

La solución orientada a servicios usa canalizaciones predeterminadas, excepto en dos lugares: la canalización de recepción para la orquestación CustomerServiceReceiveSend y la canalización de envío de la orquestación CustomerService a PaymentTracker. Ambas canalizaciones utilizan componentes personalizados.

La canalización de recepción para CustomerServiceReceiveSend incluye un componente de resolución de entidad personalizada, componente de canalización del emisor de vales de SSO. Los mensajes que recibe la orquestación CustomerServiceReceiveSend no tienen credenciales. Esto simula lo que ocurriría si los mensajes procediesen de un sistema de respuesta interactiva de voz. El componente de canalización personalizado agrega credenciales mediante la cuenta de servicio del host de recepción de BizTalk.

Por el contrario, los mensajes que recibe la orquestación CustomerSericeNativeRequestResponse ya tienen credenciales. Puesto que la carpeta virtual para el servicio Web está configurada para seguridad integrada y la ubicación de recepción de SOAP está configurada para integrar el inicio de sesión único (SSO) empresarial, el adaptador de SOAP genera un vale para el mensaje.

La otra canalización personalizada aparece en la canalización de envío CustomerService a la aplicación PaymentTracker . El Componente de canalización establecedor de encabezado de MQSeries establece los valores para dos propiedades de encabezado de mensaje de MQSeries. El componente establece el primero, el formato de datos de mensaje (MQMD_Format), para indicar que el mensaje está en forma de una estructura MQCIH , una estructura que se usa habitualmente para comunicarse con programas CICS. El segundo, el formato de los datos en sí dentro de la estructura MQCIH (MQCIH_Format), se establece para mostrar que el mensaje es una cadena.

El uso del formato MQCIH le permite pasar el identificador de usuario y la contraseña en la estructura MQCIH . Las aplicaciones afiliadas de SSO asignan el identificador de usuario de Windows de la aplicación de BizTalk a los identificadores de usuario del sistema de seguimiento de pagos pasados en la estructura MQCIH .

Nota

La versión en línea de la solución utiliza las mismas canalizaciones al llamarlas desde la orquestación. Esto permite reutilizar el código de canalización.

Aplicación cliente

La solución incluye una aplicación cliente escrita en C#. Puede utilizarla para enviar solicitudes en forma de mensajes de SOAP o MQSeries y examinar los resultados

Otros ensamblados

La aplicación incorpora varios ensamblados auxiliares que no se muestran en el diagrama de resumen anterior. Funciones de utilidades de ensamblado para la solución.

El ensamblado ErrorHelper contiene clases para traducir códigos de error en mensajes y convertir mensajes de error en códigos de error.

El ensamblado ServiceLevelTracking incluye métodos auxiliares mediante la API de supervisión de actividad empresarial (BAM) para realizar un seguimiento de los datos del contrato de nivel de servicio.

El ensamblado ConfigHelper contiene métodos auxiliares para recuperar los valores de configuración de la solución de la aplicación SSOConfigStore .

Consulte también

Desarrollo de una solución orientada a servicios
Inventario de archivos para la solución orientada a servicios