A CICS®
EJB server contains the following basic components:
- The listener
- The job of the listener is to listen for (and respond to) incoming TCP/IP
connection requests. An IIOP listener is configured by a TCPIPSERVICE resource
definition to listen on a specific TCP/IP port and to attach an IIOP request
receiver to handle each connection.
Once an IIOP connection has been
established between a client program and a particular request receiver, all
subsequent requests from the client program over that connection flow to the
same request receiver.
- The request receiver
- The request receiver analyzes the structured IIOP data. It passes the
incoming request to a request processor by means of a request stream,
which is an internal CICS routing mechanism. The object key in the request
determines whether the request must be sent to a new or an existing request
processor.
If the request must be sent to a new request processor, a CICS
TRANSID is determined by comparing the request data with templates defined
in REQUESTMODEL resource definitions. (If no matching REQUESTMODEL
definition can be found, the default TRANSID, CIRP, is used.) The TRANSID
defines execution parameters that are used by the request processor.
- The request processor
- The request processor is a transaction instance that manages the execution
of the IIOP request. It:
- Locates the object identified by the request
- For an enterprise bean request, calls the container to process the bean
method
- For a request for a stateless CORBA object, the ORB typically processes
the request itself (although the transaction service may also be involved).
For comprehensive information about listeners, request receivers, and request
processors, see The IIOP request flow.
Figure 1 shows a CICS logical EJB server.
In this example, the listener regions and AORs are in separate groups, connection
optimization is used to balance client connections across the listener regions,
and distributed routing is used to balance OTS transactions across the AORs.
Figure 1. A CICS logical EJB server.
The logical
server consists of a set of cloned listener regions and a set of cloned AORs.
In this example, connection optimization by means of dynamic DNS registration
is used to balance client connections across the listener regions. Distributed
routing is used to balance OTS transactions across the AORs.