Procesos distribuidos

Una transacción puede iniciar otras transacciones y, por tanto, conversaciones. En un proceso complejo, surge una jerarquía distinta, normalmente con la transacción iniciada por el terminal en la parte superior.

La figura 1 muestra una posible configuración. En este ejemplo, la transacción TRAA, en el sistema CICSA, se inicia desde un terminal. La transacción TRAA adjunta la transacción TRBB para ejecutarse en el sistema CICSB. La transacción TRBB adjunta a su vez la transacción TRCC en el sistema CICSC y la transacción TRDD en el sistema CICSD. Ambas transacciones TRCC y TRDD adjuntan la misma transacción SUBR en el sistema CICSE, dando lugar así a dos copias de SUBR.
Figura 1. La autoedición en un proceso distribuido. (Las puntas de flecha indican las solicitudes de adjuntos).
Esta figura muestra una configuración de cinco sistemas CICS interconectados, que se describe en el texto.

Obsérvese que, para cada transacción, sólo hay una solicitud de conexión de entrada, pero que puede haber varias solicitudes de conexión de salida. La sesión que activa una transacción se denomina instalación principal. Una sesión asignada por una transacción para activar otra transacción se denomina su instalación alternativa. Por lo tanto, una transacción puede tener una sola instalación principal, pero varias instalaciones alternativas.

Cuando una transacción inicia una conversación, es la transacción frontal de esa conversación. Su interlocutor es la transacción back-end en la misma conversación. Normalmente es la transacción frontal la que domina y determina el rumbo de la conversación. Este estilo de procesamiento se denomina a veces modelo cliente/servidor.

Alternativamente, la transacción de front-end y la transacción de back-end pueden intercambiar el control entre ellas. Este estilo de procesamiento se denomina peer-to-peer. Como su nombre indica, este modelo describe la comunicación entre iguales. Puede elegir libremente el modelo que necesite a la hora de diseñar su aplicación; CICS® admite ambos.