What the Workload Manager needs to know

This section discusses how CICS® server instances relate to the CICS regions, and the information required by the Workload Manager to perform its load management.

The following table illustrates knowledge that the Workload Manager must have. Specifically, the Client daemon must be able to correlate server instances against the regions to which they belong.

CICS Region Server instance
REGION1
  • CICS1
  • CICS2
  • CICS3
REGION2
  • CICS4
  • CICS5
REGION3
  • CICS6
The Client daemon can connect to a specific region through only one server instance. So, in the example, a Client daemon can connect to a region using one of the following groups of servers:

For example, connections from a specific client to CICS2, CICS4, and CICS6 would be valid but connections to CICS1, CICS3, and CICS5 would not be valid because CICS1 and CICS3 belong to the same region.

As mentioned previously, if a TCP/IP CICS region needs to service a large number of clients, it might need to define multiple server instances, each with its own port number. From a client perspective, each server definition represents a uniquely targetable CICS region instance.

For example, if a port can handle 200 concurrent clients and there are 8000 clients, 40 ports are needed to support all clients. If the clients can distribute their connections across these ports, this would optimally result in 200 clients per port. Using a random distribution model, it is statistically possible for the distribution to be 210 clients on one port and only 190 on another (assuming 200 on the remainder). This would result in a set of client failures. The solution is to increase the number of ports available. For example, increasing the number of ports to 50 would result in a randomly even distribution of 160 clients/ports. The random selection algorithm would now have to deviate by 25% to exceed 200 clients on one port.

As a port can handle only a relatively small number of concurrent client connections, balancing the distribution of server instances across all the clients is vital. In the example, if all clients selected CICS2 as the connection to REGION1, it is likely that the port for CICS2 would quickly be overloaded, resulting in failures. If all clients need to access REGION2, 50% should use CICS4, and 50% should use CICS5.

Not all CICS programs need be available on all possible CICS regions. The Workload Manager knows the name of the program that the client request is for, and can select, from a subset of all regions, those regions on which a particular program is defined. The Workload Manager also has knowledge of a set of regions to which undefined programs may be routed.

For example:

Program Region Average Elapsed Time
PROG1
  • REGION1
  • REGION2
  • REGION3
  • 10
  • 20
  • 15
PROG2
  • REGION1
  • REGION3
  • 20
  • 10
PROG3
  • REGION2
  • 5

This data can be used both to monitor application execution, and to provide input to workload management algorithms.

To sum up, the Workload Manager must know: You supply this information using the Configuration Tool which produces the appropriate entries in the configuration file; see Configuring the Workload Manager.