Enter ZMQID DISPLAY to display the information for the
channels defined in the TPF system; for example:
zmqid disp ch-*
CSMP0097I 19.20.50 CPU-B SS-BSS SSU-HPN IS-01
MQID0013I 19.20.50 START OF ZMQID DISPLAY
CHANNEL chl1
CONNECTION 9.117.249.98(2000)
QMNAME qmngr1
CHANNEL chl2
CONNECTION TPFNET.LU
QMNAME qmngr1
CHANNEL chl3
CONNECTION 9.117.249.98
QMNAME qmngr3
END OF DISPLAY
zmqid disp ch-chl1
CSMP0097I 19.22.12 CPU-B SS-BSS SSU-HPN IS-01
MQID0012I 19.22.12 START OF ZMQID DISPLAY
CHANNEL chl1
CONNECTION 9.117.249.98(2000)
TRPTYPE TCP
MODE
TPNAME
QMNAME qmngr1
DESCR
RCVDATA
RCVEXIT
SCYDATA
SCYEXIT
SENDDATA
SENDEXIT
MAXMSGL 30000
END OF DISPLAY
zmqid disp ch-chl2
CSMP0097I 19.23.01 CPU-B SS-BSS SSU-HPN IS-01
MQID0012I 19.23.01 START OF ZMQID DISPLAY
CHANNEL chl2
CONNECTION TPFNET.LU
TRPTYPE APPC
MODE TPFLU62
TPNAME TPFTP
QMNAME qmngr1
DESCR
RCVDATA
RCVEXIT
SCYDATA
SCYEXIT
SENDDATA
SENDEXIT
MAXMSGL 30000
END OF DISPLAY
MQSeries Slow Queue Sweeper
For PUT 12, turbo MQSeries APAR PJ27023 introduced TPF customers
to the sweeper, which is an agent used to remove messages
residing in memory for local memory queues to TPF collection
support (TPFCS) files, thus cleaning up unused system work blocks.
This sweeper targets queues that are not being serviced in a
user-specified period of time. Now, with MQSeries PUT 13 (APAR
PJ27351), it is time to "hang that old mop out to dry" and use the
new and improved slow queue sweeper (SQS). The SQS expands on the
performance of the sweeper by freeing up resources from local
memory queues (now including transmission queues) based on the
rate at which they are serviced.
What is a slow queue and how is the service rate
determined?
The service rate of the local memory queue is defined as the
ratio of MQPUTs performed by an application versus the total number
of messages retrieved from the queue. When the size of the queue in
memory is twice the retrieval rate, the queue becomes known as a
slow queue because the size of the queue appears to be
growing faster than the rate at which we are removing messages.
Slow queues are known for their potential to take over (or
hog) large amounts of system work blocks (SWBs) that the
old sweeper overlooks because the queue is being serviced in a
user-specified period of time. The SQS, however, detects this
condition and targets these slow queues in addition to those
targeted by the old sweeper.
How will the SQS affect system performance?
This mechanism frees up even more SWBs for immediate use by
other system services, thus enhancing the overall performance. The
SQS does not sweep everything from memory; it actually leaves a
small buffer of messages on the queue in an attempt to accommodate
the slow incoming requests from applications. By allowing a few
messages to remain in memory, the SQS limits the amount of
unsweeping required for each application request.
Because you brought it up, how will SQS affect the unsweep
process?
Unsweep contains some minor enhancements to allow for the
changes made to the SQS, such as the unsweeping of transmission
queues; but the basic structure and performance remain
unchanged.
Will the SQS generate a lot of unnecessary sweep activity?
If the local memory queue is a dead queue, the sweeper will free
up its SWBs from memory and the queue will be "forgotten" until an
application issues a request for that queue. If, however, the queue
is just slow, there may be a vicious cycle of sweep/unsweep
requests. To break up this cycle, the concept of skipping
sweeps is introduced. After each unsweep, an indicator is set
to alert the sweeper that the queue has just been unswept. In this
case, the sweeper skips over the queue and continues on to the next
queue, giving the system a chance to process any outstanding MQGETs
and/or pre-fetch requests uninterrupted. The skipped queue will be
swept during the next sweep interval, which is 5 seconds.
Can I turn off the SQS?
Sure. To disable the SQS, just set the sweep value to OFF in the
Queue Manager profile and this will turn off the sweeper for the
entire system. When defining queues, the default value for the
SWEEP parameter is ON, so there is no need to specify this in the
queue definition unless you specifically want to turn off the
sweeper for the queue.
Note: We do not recommend that you turn off
the sweeper.
How easy is it to migrate from the old sweeper to the new
SQS?
Not a problem at all! Just follow the instructions listed in the
TPF Migration Guide to load APAR PJ27351 and all predefined
queues will be updated to use the SQS. There is no longer a
SWEEPTIME parameter, so all queues as well as the queue manager
will now display a parameter called SWEEP with a value of ON or
OFF. Removing the APAR is also a breeze with the SQS; any queue
that is defined with a SWEEP parameter value of ON will now display
a sweep time of 30; those with a value of OFF will display a value
of 0. The original values of all other queues as well as the queue
manager will be restored.
Third Quarter 2000 - Table of
Contents