The shared class cache explains how the shared class
cache works, and how JVMs benefit from using it.
CICS® supports
one active shared class cache in each region. This enables you to support
the majority of the JVMs in each region. Some of the JVMs in the region might
not be suited to sharing the class cache, because they have an inappropriate
level of reusability, or because they are debug JVMs used for problem diagnosis.
These JVMs can still run as standalone JVMs, and have their own cache of classes
in their storage heaps.
Before
setting up the shared class cache, you need to check the options for semaphores
that you have set in the BPXPRMxx members of SYS1.PARMLIB. The master JVM
that initializes the shared class cache uses a single semaphore ID, and requests
a set of 32 semaphores, so you need to:
- Ensure that the MNIDS value is enough for the maximum number of semaphore
IDs that are in use at one time, including the shared class cache. Depending
on the frequency with which you expect to reload the shared class cache, you
might want to allow two or possibly three semaphore IDs for the shared class
cache. One semaphore ID would be used by the master JVM that controls the
active shared class cache, and the remainder would be used by a master JVM
that controls a shared class cache that is being phased out, or by a new master
JVM that controls a shared class cache that is being loaded. It is unlikely
that you would need more than two semaphore IDs for the shared class cache,
except in a CICS region that is being heavily used for development and testing.
(“Managing
your JVM pool for performance” in the CICS Performance Guide has more
information about the usage that could be expected in a production system
or in a development system.) If you need to change the MNIDS value, you can
do this by using the IPCSEMNIDS parameter that is in the BPXPRMxx members
of SYS1.PARMLIB.
- Ensure that the MNSEMS value is enough for the maximum number of semaphores
that the master JVM requests in a semaphore set—the value must be 32 or greater.
If you need to change the MNIDS value, you can do this by using the IPCSEMNSEMS
parameter that is in the BPXPRMxx members of SYS1.PARMLIB.
See
z/OS UNIX System
Services Planning, GA22-7800, in the topic “Customizing the BPXPRMxx
parmlib members”, and
z/OS MVS Initialization and Tuning Reference,
SA22-7592, in the topic “BPXPRMxx (z/OS UNIX System Services parameters)“,
for more information about adjusting these parameters.
The CICS Transaction Server for z/OS® Installation
Guide has information about other parameters in the BPXPRMxx members
of SYS1.PARMLIB that need to be changed to use JVMs in a CICS environment.
Now that you have set up a shared class cache in your CICS region, Managing the shared class cache tells you how to manage it.