EXCI user-replaceable module DFHXCURM

The user-replaceable module DFHXCURM is invoked on EXCI Allocate_Pipe requests, and also after detection of EXCI retryable errors.

This occurs in one of these circumstances:

In early releases of CICS Transaction Gateway, an EXCI pipe was established, used, and deallocated, for each ECI flow. CICS Transaction Gateway now creates a pipe only for the first ECI flow. Later calls reuse this pipe. As a result, it is no longer possible to perform workload management using the EXCI user-replaceable module DFHXCURM, because the code is called only on the first ECI flow.

An alternative way of performing workload balancing is to take the following steps:
  1. Route all your ECI flows to the same CICS server.
  2. Perform the routing to other CICS servers, using, for example, a round-robin approach to distribution.

Although reusing the same pipe for EXCI calls has an impact on previously written workload management code, there are benefits in CICS Transaction Gateway performance. This is because the Initialize_User and Allocate_Pipe EXCI commands are only called once per worker thread per APPLID. In the past they were called at the start of every ECI flow.

If an EXCI Open_Pipe call fails with a retryable error, the CICS Transaction Gateway retries the Allocate_Pipe and Open_Pipe calls up to a maximum of five times, (the same as the EXEC CICS LINK command.) Each time the Allocate_Pipe is called, the EXCI user-replaceable module DFHXCURM is driven and can change the specified CICS_APPLID; this allows the CICS Transaction Gateway five retries to find an available server.

An EXCI pipe to a failed CICS server is deallocated and reallocated when a subsequent ECI request to that failed CICS server is made. DFHXCURM can be driven to allocate the pipes to a different server, but the pipes are not reallocated to the failed server when it comes up again.


Concept Concept

Feedback


Timestamp icon Last updated: Tuesday, 19 November 2013


https://ut-ilnx-r4.hursley.ibm.com/tgzos_latest/help/topic/com.ibm.cics.tg.zos.doc//ctgzos/ccliac4.html