This scenario shows how to configure a highly available gateway group (HA group) of Gateway daemons with connections to CICS over IPIC. The scenario supports two-phase commit (XA) transactions and uses policy-based dynamic server selection for selecting a CICS server.
A highly available gateway group consists of a group of Gateway daemons that share the same TCP/IP port and are capable of providing XA transactional support.
The figure shows workload from a connection factory in WebSphere Application Server being served by similar Gateway daemons (CTGA1, CTGA2) which represent the HA group “GroupA”. Any supported JEE application server can be used in this scenario.
Each Gateway daemon is connected to CICS servers CICSA1 and CICSA2 using the IPIC protocol. A transaction might be handled by Gateway daemon CTGA1 or CTGA2, and the work in CICS will be handled by one of CICSA1 or CICSA2. In this scenario, the Gateway daemon is configured for dynamic server selection using a CICS request exit. Dynamic server selection is performed at the start of each new transaction and manages the associated transactional affinity with the selected CICS server, for the life of the transaction.
Follow the step-by-step instructions in this scenario to implement an HA group. This example uses CICS Transaction Gateway connecting to CICS Transaction Server V4.1 over IPIC and WebSphere Application Server V8.0.
Component | Property | Where set | Details |
---|---|---|---|
TCP/IP | Port sharing | PROFILE.TCPIP | 4148 TCP CTGA* SHAREPORT |
CICS TG | APPLIDQUALIFIER | GroupA_GW.ini | GROUPA |
CICS TG | TCP protocol handler | GroupA_GW.ini | Port number 4148 |
CICS TG | Gateway group A common configuration | GroupA_GW.ini | maxconnect=500 |
CICS TG | IPIC connection to CICSA1 | GroupA_GW.ini | name=CICSA1 |
CICS TG | IPIC connection to CICSA2 | GroupA_GW.ini | name=CICSA2 |
CICS TG A1 | Gateway instance A1 environment variables | CTGS03A1 | CICSCLI=config_path/GroupA_GW.ini |
CICS TG A2 | Gateway instance A2 environment variables | CTGS03A2 | CICSCLI=config_path/GroupA_GW.ini |
CICS TS CICSA1 | TCPIPService for IPIC connection | Using CEDA on CICSA1 | name=SRV4149 |
CICS TS CICSA2 | TCPIPService for IPIC connection | Using CEDA on CICSA2 | name=SRV4150 |
WebSphere Application Server | CICS TG ECI resource adapter connection factory | J2C connection factories | name=ECI-XA-GROUPA |
WebSphere Application Server | CICS TG ECI resource adapter connection factory | J2C connection factories | JNDI Name=eis/CICSGroupA |
WebSphere Application Server | CICS TG ECI resource adapter connection factory | ECI-XA-GROUPA connection pool properties | Maximum connections=500 |
WebSphere Application Server | CICS TG ECI resource adapter connection factory | ECI-XA-GROUPA custom properties | ConnectionURL=tcp://server.ibm.com |