Using CICSPlex SM to route requests

If you use CICSPlex® SM to manage your CICSplex, you might not need to write your own dynamic routing program. CICSPlex SM provides a dynamic routing program that supports both workload routing and workload separation. All you have to do is to tell CICSPlex SM which regions in the CICSplex can participate in dynamic routing.

Using CICSPlex SM, you could integrate workload routing for program-link requests with that for terminal-initiated transactions.

How CICS obtains the transaction ID

A transaction identifier is always associated with each dynamic program-link request. CICS obtains the transaction ID using the following sequence:
  1. From the TRANSID option on the LINK command.
  2. From the TRANSID option on the program definition.
  3. CSMI, the generic mirror transaction. This is the default if neither of the TRANSID options are specified.

If you write your own dynamic routing program, perhaps based on DFHDYP, the transaction ID associated with the request might not be significant; you could, for example, code your program to route requests based on program name and available AORs (application owning regions).

However, if you use CICSPlex SM to route your program-link requests, the transaction ID becomes much more significant, because the CICSPlex SM routing logic is transaction-based. CICSPlex SM routes each DPL request according to the rules for its associated transaction as specified in the Transaction Group (TRANGRP), Workload Management Definition (WLMDEF) and Workload Management Specification (WLMSPEC) resource tables.

Note: The CICSPlex SM system programmer can use the EYU9WRAM user-replaceable module to change the transaction ID associated with a DPL request.