Dynamic routing with CICSPlex SM
When a remote transaction is initiated, the CICS® relay program is invoked. The CICS relay program links to the dynamic routing program EYU9XLOP. EYU9XLOP creates the environment necessary for CICSPlex® SM-based dynamic routing and sets up the CICSPlex SM runtime environment.
- DTRPGM
- For static routing, ATI, and dynamic routing, set EXU9XLOP on the DTRPGM system initialization parameter that is associated with the requesting region that initiates the transaction. Any target region that is also to act as a routing region must also specify DTRPGM in the SIT and must be set up as a routing region as described in Associating a CICS system or system group with a workload specification.
- DSRTPGM
- For non-terminal-related EXEC CICS START commands, BTS activities, or
enterprise beans, set EYU9XLOP on DSRTPGM system initialization parameter in:
- The requesting region that initiates the request.
- All potential target regions if the DYROPTER field in the communications area or container for
the routing program (mapped by the DFHDYPDS copybook) is to be set to Y.
If you use CICSPlex SM to route non-terminal-related EXEC CICS START commands, the DYROPTER field is always set to Y. You must therefore always specify
DSRTPGM=EYU9XLOP
and ensure that the target region is part of the workload. Failing to ensure that the target region is defined to the workload results in the started transaction waiting for the workload to become available and the transaction hangs.
- Route selection, route selection error, and transaction termination.
- For BTS (all supported releases of CICS), transaction initiation, transaction abend, and routing attempt complete.
- For non-terminal EXEC CICS START requests (all supported releases of CICS), transaction initiation, transaction abend, and routing attempt complete.
When CICS links to EYU9XLOP, it passes the CICS communication area DFHDYPDS to it.
- The EYU9WRAM user-replaceable module is not defined to CICS
- EYU9WRAM is defined to CICS, but is not available
- EYU9WRAM is defined to CICS, is available, and the load module is the assembly language version of the module as distributed with CICSPlex SM.
The internal routing action process produces the same results as running the assembly language version of EYU9WRAM as it is distributed with CICSPlex SM. If no additional dynamic routing control is required at your enterprise, the internal process provides better performance.
The EYU9WRAM module, or its equivalent internal process, receives the CICSPlex SM-based communication area EYURWCOM. An entry for EYU9WRAM is added to the CICS system definition file, DFHCSD, for each CICS system during installation. As distributed with CICSPlex SM, EYU9WRAM drives CICSPlex SM workload management processing. EYU9WRAM does this by first obtaining the appropriate list of target region candidates, based on the transaction group, and the terminal ID, LU-name, user ID, or process type. Then, EYU9WRAM selects a target region from the list of candidates.
For most situations, the supplied EYU9WRAM module provides workload management capabilities. However, if it is ever needed, you can customize CICSPlex SM workload management processing by modifying EYU9WRAM. For more information, see Creating a user-replacement module for EYU9WRAM.