You are on page 1of 3

Tuning Tuxedo Processes using PeopleSoft delivered tools

PeopleSoft delivers tools that can be used to monitor the Tuxedo processes themselves. You can
gather data on which servers are being used, how many clients are connected, who is connected,
what types of services they are accessing and what the running services are doing. The Tuxedo
command line can be accessed by running psadmin and selecting option 5 from the main
administration menu: 5) TUXEDO command line (tmadmin) A list of all commands
available can be accessed by typing “help” on the command line. There are a couple of commands
that can be used on a regular basis to obtain a fairly accurate assessment of what the application
server is up to.
 psr: printserver This will print server statistics on a per server basis. This is a great
command to use to figure out which servers are working the most. The last column – Current
Service will tell you the services that are being run at the time that you issue the command.
The defined services can be obtained by typing:
 psc: print service This will print out a list of all of the services that have been defined to the
application server, and how often that service has been accessed. This is invaluable for
obtaining information about what services users are accessing most. This information can be
used to size servers accordingly, i.e. adding or reducing the number of active servers.
 pclt: print client This will print information about users accessing the Application Server,
and which client computers they are accessing from. Client status is also obtained with this
command – Busy, Wait, etc..
 pq: print queue This will print out information about requests that are currently in the queue.
This information is invaluable for sizing the number of servers (psappsrv, pssamsrv,
psqcksrv) that are needed for any given environment. The general rule is that there should
never be more than 5 requests in a queue at a given time. A more realistic approach is that no
more than 3 requests should be in a single queue at any given time. If there are more than
three requests in a queue, chances are that people will notice a performance change.
Some services take longer than others, given what they are doing. RAMLIST, which handles drop
down list boxes takes a much shorter time than PPRLOAD or PPRSAVE, which handle panel
builds and panel saves, respectively. The quick services should never be queued for more than a
few seconds, since they process quickly. If your “quick” services are being queued, you should
make sure that enough psqcksrv servers are running.
You can monitor which queues are slowing things down using pq. You can see what clients are
accessing the Tuxedo domain using pclt. You can find out which servers are being used the most
using psr.
Also, since the Tuxedo processes (servers) that interact with the database on behalf of the client
are not multithreaded, they are executing a single command at a time. This means that if you have
a service in a queue that is taking an excessive amount of time in the database, other processes
may have to wait behind it in the queue, If no other servers are available. This would equate to a
loss of performance. This is a perfect example of why one would want to monitor queues. If you
have 4 PSQCKSRV servers running, expect to see an equal amount of work done by each process.
If all instances are busy, and additional services are waiting in queue, it is an indication that you
need more servers.

The psr command explained


The following screen shot shows the output of the psr command:
> psr

Prog Name Queue Name Grp Name ID RqDone Load Done Current Service
--------- ---------- -------- -- ------ --------- ---------------
BBL 40448 SITE1 0 196 9800 ( IDLE )
PSAPPSRV APPQ APPSRV 1 299 14950 ( IDLE )
PSAUTH 00001.00001 BASE 1 158 7900 ( IDLE )
PSAPPSRV APPQ APPSRV 2 316 15800 ( IDLE )
PSAPPSRV APPQ APPSRV 3 318 15900 ( IDLE )
PSQCKSRV QCKQ APPSRV 50 4512 225600 ( IDLE )
PSQCKSRV QCKQ APPSRV 51 4432 221600 ( IDLE )
PSQCKSRV QCKQ APPSRV 52 4386 219300 ( IDLE )
PSQCKSRV QCKQ APPSRV 53 4386 219300 ( IDLE )
PSSAMSRV SAMQ APPSRV 100 1036 51800 ( IDLE )
WSL 00001.00020 BASE 20 0 0 ( IDLE )

 The Prog Name is the name of the Application Server process that is being displayed.

 The Queue Name is used internally by Tuxedo, and does not affect tuning at this point.
 The Grp Name is used internally by Tuxedo as well. You can filter on groups.
 The RqDone column displays the amount of requests processed.
 The Load Done column is incremented by a specified value every time the server processes a
request or executes a service. This is helpful, because as you are monitoring, you can tell if
the Current Service is the same from the last refresh time, or if it is a new request.
 The Current Service displays the name of the Application Server service that is currently
being executed. You can get a list of all services by typing psc, which will be shown shortly.

The pclt command explained

> pclt

LMID User Name Client Name Time Status Bgn/Cmmt/Abrt


--------------- --------------- --------------- -------- ------- -------------
SITE1 psoftfn WSH 28:06:43 IDLE 0/0/0
SITE1 psoftfn WSH 28:06:43 IDLE 0/0/0
SITE1 psoftfn WSH 28:06:43 IDLE 0/0/0
SITE1 AKUAN STN5 2:29:53 BUSY/W 0/0/0
SITE1 AGEPIGON STATION 3 0:03:15 IDLE/W 0/0/0
SITE1 AGEPIGON STATION 3 0:04:37 IDLE/W 0/0/0
SITE1 psoftfn tmadmin 2:16:45 IDLE 0/0/0

 The User Name column displays the name of the User, as defined in PeopleSoft

 The Client Name column displays the NetBIOS name of the computer that the client is
accessing the application server from.

 The Time column displays the time in HH:MM:SS that that particular user has been active.
You can deduce from the Time status of some servers (WSH) how long the application server
has been up and running.

 The Status column shows the current status of that client. Busy indicates that the client has
requests pending in the application server.

 Bgn/Cmmt/Abrt – Begin/Commit/Abort Transaction data

The pq command explained

> pq
Prog Name Queue Name # Serve Wk Queued # Queued Ave. Len Machine
--------- ------------------- --------- -------- -------- -------
PSQCKSRV QCKQ 4 - 0 - SITE1
PSAUTH 00001.00001 1 - 0 - SITE1
PSSAMSRV SAMQ 1 - 0 - SITE1
WSL 00001.00020 1 - 0 - SITE1

PAT SMITH PAGE 2


6/28/2021
BBL 40448 1 - 0 - SITE1
PSAPPSRV APPQ 3 - 0 - SITE1

 Prog Name is the name of the PeopleSoft-defined server that will run. PSQCKSRV handles
non-conversational SQL calls. PSAUTH is the server that handles logins to the PeopleSoft
database, PSSAMSRV handles conversational SQL requests. The WSL is the WorkStation
Listener. The WSL handles connections between the clients and the WorkStation Handler
(WSH). The BBL is the Bulletin Board Liaison, and it oversees all of the processes, servers,
and queues. Think of it as acting like an Air Traffic Controller. Finally, the PSAPPSRV
handles Panel Builds, Panel Saves, and the cache. Each PSAPPSRV started maintains an
individual cache, even within the same domain.

 The Queue Name column displays a list of currently defined queues. These are used
internally. Services for the PSAPPSRV are queued to the APPQ, services for PSSAMSRV
are queued to the SAMQ, and services for the PSQCKSRV are queued to the QCKQ. A
single queue can service many servers. If there are four PSQCKSRV servers defined, there is
a single queue, QCKQ that holds PSQCKSRV requests for all four servers.

 The # Serve column displays the number of the current servers in the Prog Name column that
are currently running. In the above example, the first line indicates that there are 4
PSQCKSRV processes running. Each of these processes handles requests from the Queue
Name listed above.

 # Queued displays the number of these types of services currently in queue. If you have a lot
of services in queue, something is wrong with your configuration. You should rarely see
queued services.

PAT SMITH PAGE 3


6/28/2021

You might also like