Look at these key statistics when analyzing the performance
of the CICS® Transaction Gateway.
Capture statistics when the CICS Transaction
Gateway is operating under a number of different operating conditions.
This will help you understand changes that might affect the performance
of the system.
- CM_CALLOC
- The current number of
connection manager threads allocated to clients.
- CM_CCURR
- The current number of
connection manager threads created. If this
value is greater than the configuration parameter initconnect,
it signifies the peak number of remote clients connected at any one
time. This value cannot exceed the maximum number of connection managers
defined in CM_SMAX.
- CM_CWAITING
- The current number
of connection managers waiting for a worker thread to become available. This
statistic shows the number of requests that are queuing in the Gateway
daemon. It is usually low or zero in a well-tuned Gateway daemon.
If it is higher than expected, consider increasing the maxworker configuration
parameter.
- CM_IALLOC
- The number of allocations
for connection manager threads representing the number of connections
that have been established from remote clients. A low value represents
efficient connection reuse.
- CM_IALLOCHI
- The peak number of
connection manager threads concurrently allocated to client applications.
This number represents a high water mark for CM_CALLOC.
- CM_ICREATED
- The number of connection
manager threads created.
- CM_ITIMEOUTS
- The number of times
that the Gateway daemon failed to allocate a connection manager thread
to a client application within the defined connecttimeout length
of time.
- CM_LALLOC
- The number of allocations
for connection manager threads representing the number of connections
that have been established from remote clients. A stable value represents
efficient connection reuse.
- CM_LTIMEOUTS
- The number of times
that the Gateway daemon failed to allocate a connection manager thread
to a client application within the defined (connecttimeout) length
of time. This
statistic shows the number of incoming connection requests that have
been refused. It is usually low or zero in a well-tuned Gateway daemon.
If it is high, consider increasing the connecttimeout or maxconnect configuration
parameters.
- CM_SMAX
- The maximum number of
connection manager threads maxconnect that can
possibly be created and allocated by the Gateway daemon. This value
limits the number of Java™ clients
that can be connected at any one time.
- CS_CALLOC
- The current
number of allocated EXCI pipes across all CICS servers. Compare
this value to the number of pipes available on this CICS Transaction Gateway; see CS_SLOGONLIM. If the number
of pipes is close to the maximum available, it indicates that your CICS Transaction Gateway system
is running near full capacity. Check that your CICS system can run with the maximum available
250 EXCI available pipes. If the number of EXCI pipes cannot support
your workload, you might need to make more EXCI pipes available by
running with multiple Gateway daemons.
There are some other reasons
why you might be running with many EXCI pipes:
- The CICS transactions are
relatively long-running and therefore occupy EXCI connections for
longer.
- Your CICS Transaction Gateway
system is using the pipe reuse model CTG_PIPE_REUSE=ALL, and is communicating
with more than one CICS server.
This model gives optimum performance. However, after a pipe has been
allocated, it remains allocated to this particular server and is not
available for use with other CICS servers.
Consider using pipe model CTG_PIPE_REUSE=ONE or direct all CICS Transaction Gateway requests
into a single CICS TOR; this
can then route these requests into other CICS servers.
- CS_ICOUNT
- The number of CICS servers to which requests
have been sent. This number equals the number of CICS servers in CS_ILIST.
- CS_IREALLOC
- The
number of times that a worker thread has to deallocate its existing
pipe and reallocate a new pipe because the existing pipe points to
a different CICS server from
that required by the request. This statistic applies only when the
environment variable CTG_PIPE_REUSE is set to ONE. Cases where the
pipe for the worker thread was deallocated and reallocated because
the CICS server was not available
are excluded.
- CS_LCOUNT
- The number of CICS servers to which requests
have been sent. This number equals the number of CICS servers in CS_LLIST. The value
of CS_LCOUNT can be useful when trying to understand EXCI pipe shortage
problems. See CS_CALLOC.
- CS_LREALLOC
- The
number of times that a worker thread has to deallocate its existing
pipe and reallocate a new pipe because the existing pipe points to
a different CICS server from
that required by the request. This
statistic is useful when determining how many additional EXCI pipe
deallocate and allocate calls have occurred when using the pipe model
EXCI_PIPE_REUSE=ONE. The performance overhead of using EXCI_PIPE_REUSE=ONE
is small in the context of typical overall transaction costs, but
if this value is high relative to the total number of requests (CS_LALLREQ),
consider using the pipe reuse model CTG_PIPE_REUSE=ALL.
- CS_SLOGONLIM
- The
maximum EXCI pipe allocation for each MVS™ address
space. This value is the equivalent to the CICS subsystem initialization parameter LOGONLIM. You
can use this value to verify the maximum number of EXCI pipes that
are available to your CICS Transaction
Gateway.
- CSX_CALLOC
- The
current number of allocated EXCI pipes for CICS server x. See CS_CALLOC.
- WT_CALLOC
- The current number of
worker threads that are being used by connection managers. Another
way of viewing this value is the number of worker threads processing
requests. If this
value is close to WT_SMAX, consider increasing the maxworker configuration
parameter.
- If the CTG_PIPE_REUSE environment variable is set
to ONE, increasing maxworker to the maximum number
of EXCI connections available can allow for a higher throughput.
- WT_CCURR
- The current number of
worker threads created. If this
value is greater than the configuration parameter initworker,
it signifies the peak number of parallel requests that have been in
process at any one time. This value cannot exceed the maximum number
of worker threads defined in WT_SMAX.
- WT_IALLOCHI
- The peak number of
worker threads concurrently allocated to connection manager threads.
This number represents a high water mark for WT_CALLOC.
- WT_ITIMEOUTS
- The number of times
the Gateway daemon failed to allocate a worker thread to a connection
manager within the defined workertimeout length
of time.
- WT_LTIMEOUTS
- The number of times
the Gateway daemon failed to allocate a worker thread to a connection
manager within the defined workertimeout length
of time. This
number signifies that requests are timing out while queuing in the
Gateway daemon. It is typically low or zero in a well-tuned Gateway
daemon. If it is higher than expected, consider increasing the maxworker or workertimeout configuration
parameters.
- WT_SMAX
- The maximum number of
parallel requests maxworker that the Gateway
daemon can process.